Linux必备命令

2020-07-08 00:00:00 命令 文件 目录 显示 用法

Linux用户权限管理

在Linux操作系统中,root的权限是高的,相当于windows的administrator,拥有高权限,能执行任何命令和操作。在系统中,通过UID来区分用户的权限级别,UID等于0,表示此用户具有高权限,也就是管理员。其他的用户UID依次增加,通过/etc/passwd用户密码文件可以查看到每个用户的独立的UID。


每一个文件或者目录的权限,都包含一个用户权限、一个组的权限、其他人权限

如果我们想改变某个文件的所有者或者所属的组,可以使用命令chown chown –R test:test monitor_log.sh即可。 每个Linux文件具有四种访问权限:可读(r)、可写(w)、可执行(x)和无权限(-)。 利用ls -l命令可以看到某个文件或目录的权限,它以显示数据的个字段为

准。


Linux系统中屏幕锁定命令:

字符界面,按ctrl +s 键,即可关掉屏幕回显,类似于锁屏。

按ctrl + q键即可解锁,注意看键盘,当按下ctrl +s键的时候,指示灯scroll lock灯是亮的。

linux查找IP的命令:ifconfig



cd


cd /home 进入/home目录

cd /root 进入/root目录 ;

cd ../返回上一级目录;

cd ./当前目录;(.和..可以理解为相对路径;例如cd /hom/test ,cd加完整的路径,可以理解为路径)


ls


ls ./ 查看当前目录所有的文件和目录。

ls -a 查看所有的文件,包括隐藏文件,以.开头的文件。

ls -l(这个参数是字母L的小写,不是数字1)这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令。

Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x)

ls –F(注意,是大写的F)使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。


pwd显示当前所在的目录。

rm 删除文件或者目录,用法 rm –rf test.txt (-r表示递归,-f表示强制)。 cp 拷贝文件,用法,cp old.txt /tmp/new.txt ,常用来备份;如果拷贝目录

需要加 –r参数。

mv 重命名或者移动文件或者目录,用法, mv old.txt new.txt touch 创建文件,用法,touch test.txt,如果文件存在,则表示修改当前文件时间。

Useradd创建用户,用法 useradd wugk ,userdel删除用户。

Groupadd创建组,用法 groupadd wugk1 ,groupdel删除组。


find


find查找文件或目录,用法 find /home -name “test.txt”,命令格式为: find 后接查找的目录,-name指定需要查找的文件名称,名称可以使用*表示所有。

find /home -name “*.txt” ;查找/home目录下,所有以.txt结尾的文件或者目录。



Vi


vi 修改某个文件,vi有三种模式: 命令行模式、文本输入模式、末行模式。 默认vi打开一个文件,首先是命令行模式,然后按i进入文本输入模式,可以在文件里写入字符等等信息。 写完后,按esc进入命令模式,然后输入:进入末行模式,例如输入:wq表示保存退出。

如果想直接退出,不保存,可以执行:q!, q!叹号表示强制退出。


Cat


cat 查看文件内容,用法 cat test.txt 可以看到test.txt内容

more 查看文件内容,分页查看,cat是全部查看,如果篇幅很多,只能看到后的篇幅。可以使用cat和more同时使用,例如: cat test.txt |more 分页显示text内容,|符号是管道符,用于把|前的输出作为后面命令的输入。


cat主要有三大功能:

1.一次显示整个文件。 cat > filename 2、只能创建新文件,不能编辑已有文件.

3.将几个文件合并为一个文件: $cat file1 file2 > file

它的用法如下:

cat text 显示text这个文件;

cat file1 file2 依顺序显示file1,file2的内容;

参数:

-n 或 --number 由 1 开始对所有输出的行数编号 eg:cat -n 1

-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号

-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行

-v 或 --show-nonprinting



echo


echo 回显,用法 echo ok,会显示ok,输入什么就打印什么。 echo ok > test.txt ;把ok字符覆盖test.txt内容,>表示追加并覆盖的意思。

>>两个大于符号,表示追加,echo ok >> test.txt,表示向test.txt文件追加OK字符,不覆盖原文件里的内容。


mkdir、rmdir


mkdir命令用来建立新的目录,rmdir用来删除已建立的目录

mkdir创建目录,如果目录存在会报错


rmdir 命令只能删除空的文件夹,如果文件夹非空,将不能删除,它也没有-f选项

要删除非空的文件夹,可以使用rm命令,加rf两个选项,rm -rf 目录名


cp


cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。

它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误


具体用法是:cp –r 源文件(source) 目的文件(target)。 参数r是指连同源文件中的子目录一同拷贝。我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖。


文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结了一个方法:

cp aaa/* /bbb 复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。

cp -r aaa/* /bbb 这次依然需要按Y来确认操作,但是没有忽略子目录。

cp -r -a aaa/* /bbb 依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。

cp -r -a aaa/* /bbb 成功,没有提示按Y、传递了目录属性、没有略过目录。




du,df

du查看目录大小,df查看磁盘使用情况。

du的命令各个选项含义如下: a:显示全部目录和其次目录下的每个档案所占的磁盘空间 s:只显示各档案大小的总合 b:大小用bytes来表示 x:跳过在不同文件系统上的目录不予统计 a:递归地显示指定目录中各文件及子孙目录中各文件占用的数据块数


df命令各个选择的含义如下: a:显示全部的档案系统和各分割区的磁盘使用情形 i:显示i -nodes的使用量 k:大小用k来表示 (默认值) t:显示某一个档案系统的所有分割区磁盘使用量 x:显示不是某一个档案系统的所有分割区磁盘使用量 T:显示每个分割区所属的档案系统名称



grep


该命令常用于分析一行的信息,若当中有我们所需要的信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等等

语法

grep [-acinv] [--color=auto] '查找字符串' filename

参数如下:

-a :将binary文件以text文件的方式查找数据

-c :计算找到‘查找字符串’的次数

-i :忽略大小写的区别,即把大小写视为相同

-v :反向选择,即显示出没有‘查找字符串’内容的那一行

# 例如:

# 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色

grep --color=auto 'MANPATH' /etc/man.config

# 把ls -l的输出中包含字母file(不区分大小写)的内容输出

ls -l | grep -i file



ps


该命令用于将某个时间点的进程运行情况选取下来并输出,process之意,它的常用参数如下:

-A :所有的进程均显示出来

-a :不与terminal有关的所有进程

-u :有效用户的相关进程

-x :一般与a参数一起使用,可列出较完整的信息

-l :较长,较详细地将PID的信息列出

其实我们只要记住ps一般使用的命令参数搭配即可,它们并不多,如下:

ps aux # 查看系统所有的进程数据

ps ax # 查看不与terminal有关的所有进程

ps -lA # 查看系统所有的进程数据

ps axjf # 查看连同一部分进程树状态

相关文章