命令

指令运行级别

运行级别配置文件:/etc/inittab

帮助信息

man 要查询的命令

help 要查看的命令

文件与目录类

ls

-a:显示隐藏文件

-l:以列表方式显示

mkdir (make directory)

-p:创建多级目录。mkdir -p /home/a/v/b/v,如果中间的目录不存在那么会一起创建。不加-p就会报错。

rmdir:删除一个目录,只能删除空目录,如果目录下有内容则无法删除

要删除有内容的目录,则需要使用rm -rf。(-r 表示递归,-f 表示强制删除)

touch:创建文件

cp

-r:递归复制整个文件夹。

\cp -r a/ b/:cp前加一个\表示默认强制覆盖,如果b目录下已经有一个名为a的目录那么不再会提示是否覆盖

rm

-r:递归删除整个文件夹

-f:强制删除,不提示是否删除

mv:移动文件或重命名

cat:查看文件,-n显示行号

more

空格:向下翻页

Enter:向下翻一行

q:离开

Ctrl + F:向下滚动一屏

Ctrl + B:向上滚动一屏

= :输出当前行号

:f :输出文件名和当前行号

less

相对于more,less并不是将整个文件加载完之后才显示,而是根据显示需要加载的内容,对于查看大文件很有用

空格:向下翻页

[pagedown]:向下翻页

[pageup]:向上翻页

q:离开

/yang:向下搜寻含有yang的字符串

?yang:向上搜寻

输出重定向和追加

>为输出重定向。ls -l > a.txt:将ls的内容写入到a.txt中,会覆盖文件的内容

>>为追加ls -l >> a.txt:不会覆盖,会在文件末尾追加内容

echo "aaa" > c.txt:也可以用echo将输出的内容重定向到文件

echo:输出内容到控制台。如echo $PATH输出环境变量

head

head a.sh:默认查看前十行

head -n 5 a.txt:查看前五行

tail

tail a.sh:默认查看后十行

tail -n 5 a.sh:查看后五行

tail -f a.sh:实施追踪文件的更新,只会追踪追加指令。如果使用vim则不会追踪,因为vim保存后实际上是删除源文件生成一个新的同名文件。

ln:软链接,类似于windows中的快捷方式

ln -s [源文件] [快捷方式名]

ln -s ../redis/dump.rdb ddd:现在查看ddd就相当于查看dump.rdb

lrwxrwxrwx 1 yang yang 17 Apr 15 21:48 ddd -> ../redis/dump.rdb

history:查看已经执行过的命令,也可以执行历史命令。!111 就会执行编号为111的命令

时间日期类

date

date:显示当前时间

date +%Y:显示当前年份

date +%m:显示当前月份

date +%d:显示当前是哪一天

date "+%Y-%m-%d %H:%M:%S":格式化日期

yang@PC-20200329MWQL:~$ date "+%Y-%m-%d %H:%M:%S"
2020-04-15 21:59:42

date -s 时间:设置系统时间

cal:显示日历

搜索查找类

locate

locat a.txt

locat指令无需遍历整个文件系统,但是要更新locate数据库

updatedb命令创建/更新数据库

grep

grep 查找内容 源文件

-n:显示匹配行及行号

-i:忽略字母大小写

yang@PC-20200329MWQL:~$ cat hello.sh
#!/bin/bash

function sum(){
        ....
        
yang@PC-20200329MWQL:~$ grep -n fun hello.sh
3:function sum(){

find

从指定目录递归的向下遍历其各个子目录,将满足条件的文件或目录显示在终端

find [搜索范围] [选项]

find /home hello.sh:查找home文件夹下的hello.sh文件

查找根目录下所有.txt的文件:find / -name *.txt

压缩和解压缩类

gzip 文件名:压缩文件成 *.gz。压缩后不会保留原来的文件

gunzip gz文件:解压缩

zip [选项] 目的文件.zip 要压缩的内容

-r:递归压缩,可以压缩文件

unzip [选项] 要解压的文件.zip

-d:指定解压后的文件的存放目录

tar [选项] 目的文件 要打包的文件

压缩后的文件格式:tar.gz

-c:产生 .tar文件

-v:显示详细信息

-f:指定压缩后的文件名

-z:打包的同时压缩

-x:解压.tar文件

tar -zcvf h.tar.gz hello.sh  #打包文件
tar -zcvf yang_home.tar.gz /home   #打包home目录
tar -zxvf h.tar.gz   #解压文件
tar -zxvf h.tar.gz -C /opt  #添加-C可以指定解压文件到opt目录下
组管理和权限管理

Linux的每一个用户都有属于自己的组

文件有一些属性

  1. 所有者:谁创建的
  2. 所在组:这个人属于哪个组

-rw-rw-rw- 1 yang yang 353 Apr 11 16:57 sentinel.conf

​ 用户 组

修改文件的所有者:chown 用户名 文件名 。文件所在组不会更改

chown root hello.sh   #将hello.sh所有者更改为root用户
-rwxr-xr-x 1 root yang   158 Apr 15 17:05 hello.sh*

修改文件所在组:chgrp root hello.sh。将hello.sh所在组修改为root组

改变文件所在组

usermod -g 组名 用户名

usermod -d 目录名 用户名 改变该用户登录的初始目录

权限信息

rwx作用到文件时

r:可读
w:可写。对该文件有可写权限并不代表可以删除该文件。需要对该文件所在目录有可写权限才能删除该文件
x(execute):可执行

rwx作用到目录时

r:可读,也就是可以查看目录内容

w:可写,也就是可以在该目录内创建、删除文件或重命名目录

x:可执行,也就是可以进入该目录

可用数字表示 (二进制)

r=4 (100) ; w=2 (010) ; x=1 (001) 。因此rwx为7 (111)

-rw-rw-rw-

- rw- rw- rw-

普通文件 文件所有者的权限 文件所在组的其他用户的权限 其他组的权限

353 Apr 11 16:57:文件大小和最后修改的时间

修改权限-chmod

u:所有者 g:所有组 o:其他人 a:所有人

  1. chmod u=rwx,g=rx,o=x 文件名
  2. chmod o+w 文件名 。 给除了文件所有者的其他人添加读权限
  3. chmod a-x 文件名 。给除了文件所有者的其他人减去执行权限

chmod 755 a.txt

第一个7代表文件拥有者权限 7(111) = 4(100) r + 2(010) w+ 1(001) x

第二个代表文件拥有者所在组的权限 5(101) = 4(100) r + 1(001) x

第三个代表其他用户的权限

修改文件所有者-chown

chown newowner filename

-R:递归,可以对目录下的所有文件生效

修改文件所在组-chgrp

chgrp newgroup filename

你可能感兴趣的:(命令)