Linux系统操作02|基本命令

上文:Linux系统操作01|文件目录、常用命令-优快云博客 

目录

四、基本命令(一)

1、ls权限介绍

2、通配符*、?和[ ],以及\

 3*、cp:拷贝

 4*、mv:移动、重命名

五、基本命令(二)

1、>和>>:重定向,本应显示在终端的内容保存到指定文件中

2*、cat:查看文件内容,显示到终端

3、 more:查看内容比较多的文件内容,可以分页显示

4*、管道 | :把左边的命令返回的结果交给右边命令进行处理

5、ln:建立链接文件

1️⃣*软链接

2️⃣硬链接

 3️⃣区别

6*、grep:查找文件内容,并输出

1️⃣搜索字符串

2️⃣使用正则表达式

7*、find:查找文件

8、tar:只打包多个文件,不压缩

9、文件压缩解压:gzip (工作时候不用)

1️⃣压缩

2️⃣解压

10、一步到位压缩解压

1️⃣gzip

2️⃣bzip2

3️⃣zip

11、其他命令 su切换用户身份


四、基本命令(一)

1、ls权限介绍

使用ls -l 会显示当前目录下的详细列表,如下图,第一列表示文件/文件夹的权限信息,第二列第三列表示当前用户,第四列表示当前用户所属的组,第五列代表文件大小,第六

第1列第2列第3列第4列第5列第6列第7列第8列第9列
件/文件夹的权限信息链接数文件的所有者用户名显示文件所属的用户组文件大小最后修改日期文件/文件夹名

权限信息 (例如:-rwxr-xr-x)

  • 第一个字符表示文件类型:

    • -:普通文件
    • d:文件夹(也就是目录)
  • 接下来的九个字符表示文件的权限,分为三组,每组三个字符:

    • 第一组:文件所有者(user)的权限
    • 第二组:与文件所有者同组的用户(group)的权限
    • 第三组:其他所有用户(others)的权限

每组的三个字符表示:

r:读权限 (read)      w:写权限 (write)       x:执行权限 (execute)       -:无该权限

例子:rwx表示拥有读、写、执行权限;r--表示只有读权限;---表示没有任何权限

2、通配符*、?和[ ],以及\

  • * :用于匹配零个或多个字符,它可以匹配任何字符,包括字母、数字、符号或空格。
  • ?:用于匹配单个字符,不论该字符是什么,它可以替代文件名或路径中的一个字符。
  • [ ]:用于匹配方括号内的任意单个字符,可以使用字符范围、特定字符集合、或者排除特定字符的方式来匹配。
  • \:如果使用通配符作为普通字符使用,可以在其前面加上转义字符\,表示转移字符后面的符号不是通配符,而是普通字符
$ ls a?b 
列出所有以 a 开头、b 结尾的文件,中间只能有一个字符。例如,acb、axb 等文件会匹配。

$ ls a*
列出所有以 a 开头的文件或目录。
$ ls *.txt
列出所有扩展名为 .txt 的文件,不管文件名前面的部分是什么。

$ ls file[123].txt
匹配 file1.txt、file2.txt 和 file3.txt,因为方括号内的字符集 [123] 表示匹配 1、2 或 3 其中的任何一个字符。
$ ls file[a-c].txt
匹配 filea.txt、fileb.txt 和 filec.txt,因为 [a-c] 是一个字符范围,表示匹配字母 a 到 c 之间的任意字符。

 3*、cp:拷贝

cp [选项] 源文件 目标文件:将源文件复制到指定的位置。

cp 源文件夹 目标文件夹 -r:复制文件夹。

  • 源文件:要复制的文件或目录。
  • 目标文件:复制后的文件或目录。
    • 如果目标是文件,则会将源文件复制为以目标文件名命名的新文件。
    • 如果目标是目录,则会将源文件复制到该目录中。

 4*、mv:移动、重命名

mv 命令是 Linux 中用于 移动 文件或目录,或者 重命名 文件或目录的命令。与 cp 命令不同,mv 是直接移动文件或目录,而不会创建副本。

mv [选项] 源文件 目标文件/目录

用法和cp类似,但是移动文件夹不需要-r

  • 如果目标是一个目录,mv 会将源文件或目录移动到该目标目录。
  • 如果目标是一个文件名,mv 会将源文件重命名为目标文件名。

注意:文件名可以用指定是某某文件夹下的文件。如 mv 1.txt  /home/admin/2.txt 将当前目录下的 1.txt 文件移动到 /home/admin/ 目录下,并重命名为 2.txt。如果目标路径中的 2.txt 已经存在,那么它会被覆盖。

 补充总结:处理文件夹需要额外加字母的命令

$ rm -r
$ cp -r
$ mkdir -p

五、基本命令(二)

1、>和>>:重定向,本应显示在终端的内容保存到指定文件中

Linux默认输入命令显示到终端窗口,但

Linux允许将命令重定向到一个文件,让本应显示在终端的内容保存到指定文件中

$ ls >test.txt         (test.txt如果不存在就,创建文件并添加内容;存在则覆盖原本内容)

注意:>输出重定向会覆盖原来内容,>>输出重定向则会追加到文件末尾 

2*、cat:查看文件内容,显示到终端

$ cat 1.txt                把文件的内容全部显示到屏幕中(注意只是显示,不能编辑)
$ cat 1.txt 2.txt          把多个文件的内容依次显示到屏幕中
$ cat 1.txt 2.txt >3.txt   把多个文件的内容合并到新的文件中

3、 more:查看内容比较多的文件内容,可以分页显示

查看内容时,在信息过长无法在一屏显示时候,会出现快速滚屏,使用户无法看清文件内容。

more 命令用于从开头逐页查看文本文件的内容。这对于查看大文件特别有用,因为它允许你一次查看一部分内容,而不是全部内容一次展示。 

$ more 1.txt 查看内容多的文件,按空格键往下翻页,按b往回翻页,按q退出

4*、管道 | :把左边的命令返回的结果交给右边命令进行处理

“ | ”的左右分为两端,左端塞东西,右端取东西

$ ls / | more 
  • ls /:列出根目录(/)下的所有文件和目录。

  • | more:通过管道符号将 ls / 的输出传递给 more 命令,以逐页显示内容。

$ ls -al / | grep 'home'
  • 在根目录 / 下列出所有文件和目录的详细信息,然后过滤出包含“home”这个关键字的行 

 5、ln:建立链接文件

类似于windows下的快捷方式

1️⃣*软链接

创建一个指向目标文件路径的快捷方式,它本身不存储内容,指向的是源文件的路径,而不是文件的实际数据。

  • 当前目录下创建软链接,使用相对路径或直接引用文件名。指向的是源文件在当前目录中的路径。(有的说是名称,其实如果源文件和软连接在同一个目录下,而创建的时候源文件没有用绝对路径,而只是一个源文件名字,就算源文件被删掉了,新建一个同名文件即可,则只要本目录下有同名字的文件即可)
  • 在其他目录创建软链接,必须明确指定源文件的绝对路径

软链接不占磁盘空间,源文件删除则软链接失效。

$ ln -s 源文件 链接文件     创建软链接
$ ln -s 1.txt 1_link      给1.txt创建一个软链接,相当于快捷方式


注意:如果软链接文件和源文件不在同一个目录下,源文件要使用绝对路径,不能是相对路径
$ ln -s 1.txt ~/1_link    错误示例,写相对路径,软连接指向的文件是不存在的
$ ln -s /home/damin/1.txt ~/1_link  正确示例,给其他目录创建一个软连接


$ ln -s abc abc_link      给目录创建软链接
编辑软连接或源文件的原理: 源文件存在,操作软连接和直接操作源文件效果一致,效果同步
2️⃣硬链接

硬链接是指不同的文件名指向相同的磁盘数据块,本身占空间,而不是路径,硬链接大小和内容与源文件保持同步变化删掉硬链接不影响源文,且源文件被删除后,数据仍然可通过硬链接访问,直到指向该磁盘数据块的所有硬链接都删掉后,数据才不能被访问(此时源文件和所有硬链接都不存在了)。

硬链接只能链接文件,不能链接目录(文件夹)。

$ ln 源文件 链接文件       创建硬链接
 3️⃣区别

6*、grep:查找文件内容,并输出

$ grep [-选项] "搜索模式" 文件                查找文件包含指定内容的行
$ grep [-选项] "搜索模式" 目录(文件夹)-r     指定目录及其所有子目录中的文件中搜索匹配的行。
  • 搜索模式:可以是普通字符串或正则表达式。
  • 文件:要搜索的目标文件。
1️⃣搜索字符串
$ grep "hello" test.txt            在某个文件中查找包含hello的内容,只要一行中有hello就会把整行显示
$ grep -niv "hello" test.txt       n显示查找内容的行号,i查找时不区分大小写,v反向查找,查找不包含hello的行
$ grep -n "hello" /home/admin-r    查找整个目录中的所有文件,包含hello的行
2️⃣使用正则表达式

使用^和$

$ grep "^ERROR" logfile.txt     匹配以ERROR开头的行。
$ grep "done$" logfile.txt      匹配以done结尾的行。
$ grep "[0-9]" file.txt         匹配包含数字的行。

 7*、find:查找文件

 在特定目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件

$ find /home -name '1.txt'      在/home目录下查找文件名为1.txt的文件
$ find /home -name '*txt'     在/home目录下查找以txt结尾的文件

8、tar:只打包多个文件,不压缩

把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。

$ tar [参数] 打包文件名 文件
$ tar cvf a.tar 1.txt 2.txt      打包,f必须放在最后,f后面的第一个参数代表要生成的文件名,后面所有的参数是要打包的而文件

$ tar tf a.tar                   列出包里面的文件 

$ tar xvf a.tar                  解包,如果没写目录,把包里面的文件解开放到当前目录
$ tar xvf a.tar -C atar          使用 -C 指定解压的目标目录。文件夹要提前创建好。

9、文件压缩解压:gzip (工作时候不用)

1️⃣压缩

①打包

$ tar cf a.tar *   生成a.tar文件

②压缩

$ gzip -r a.tar   生成a.tar.gz文件
2️⃣解压

①解压

$ gzip -d a.tar.gz  生成a.tar文件

②解包

$ tar xf a.tar -C ~/atar 解包到指定文件夹

10、一步到位压缩解压

1️⃣*gzip:

tar和gzip结合使用

Linux环境中最常用这种方式  

$ tar czf b.tar.gz *txt      以gzip方式打包并且压缩
$ tar xzf b.tar.gz -C btar   以gzip方式解压并解包,如果 btar 目录不存在,则需要先手动创建该目录。

代码第二行:如果没有指定 -C 选项,文件会解压到当前工作目录。 

2️⃣bzip2

tar和bzip2结合使用 

$ tar cjf j.tar.bz2 *txt      以jzip2方式打包并且压缩
$ tar xjf j.tar.bz2 -C jtar   以jzip2方式解压并解包
3️⃣zip
$ zip -r zz *txt      zz代表要生成的压缩文件,不需要写扩展名,会自动生成zip扩展名
$ unzip -d zz zz.zip  解压时会自动创建zz目录

11、其他命令

which(查找命令位置)、su(切换用户)、passwd(更改用户密码)、exit(退出登录账户)、who(查看当前登录账户,pts代表一个终端,tty代表用户登录了操作系统)、reboot(重启,不需要root权限)、shutdown(关机,需要root权限)

su命令:

$ su [选项] [用户名]

 
$ su           切换到root用户,需要输入root用户的密码。切换后提示符变为 #
$ su username  切换到指定用户,需要输入username用户的密码。切换后提示符仍为 $

 默认行为

  • 如果不指定用户名,su 默认切换到 root 用户。切换后,提示符变为 #,表示处于超级用户权限。
  • 切换用户时,需输入目标用户的密码

下文:Linux系统操作03|chmod、vim-优快云博客 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值