红帽Redhat—Linux命令行管理文件基础

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

一、Linux基础

1.Linux 下的目录结构

linux 哲学思想之一,一切皆文件。
文件系统层次结构标准(Filesystem Hierarchy Standard,FHS)定义了Linux操作系统中的主要目录及目录内容。
linux 中目录是一个树状结构,所有目录都是从根 / 开始。
在这里插入图片描述
/ 整个文件系统目录层次结构的根目录
├─ bin ­> usr/bin
├─ boot 存放引导程序文件,如kernel, grub 。一般是单独分区
├─ dev 存放设备和特殊文件
├─ etc 系统配置文件
├─ home 普通用户家目录
├─ lib ­> usr/lib 存放32位程序的共享库文件,此目录是链接到 /usr/lib
├─ lib64 ­> usr/lib64 存放64位程序的共享库文件,此目录是链接到/usr/lib64
├─ media 可移动媒体设备的挂载点
├─ mnt 临时挂载点
├─ opt 用于安装附加软件包
├─ proc 虚拟文件系统,将内核与进程状态归档为文本文件(系统信息都存放这目录下)
├─ root root用户的家目录
├─ run 自最后一次启动以来运行中的系统的信息├── sbin ­> usr/sbin 必要的系统二进制文件(命令),该目录下的文件只有root用户可执行
├─ srv 服务站点数据
├─ sys 设备驱动文件节点
├─ tmp 临时文件,重启后目录中的文件不会被保留
├─ usr 默认软件存放目录
└─ var 可变文件目录(文件内容不断变化),如邮件,日志

2.绝对路径和相对路径

绝对路径:文件或目录的路径是指定其唯一的文件系统位置。绝对路径是完全限定名称,自根目录 / 开始,指定到达且唯一表示单个文件所。遍历的每个自目录。
绝对路径/etc/passwd

相对路径:相对路径与绝对路径一样,也是标识唯一文件,但相对路径仅指定从工作目录到达。
相对路径etc/passwd

改文件所需的路径。
一般大多数使用绝对路径。

3.导航路径

导航路径pwd在系统中想要知道当前所处的目录,可以用pwd命令,该命令显示整个路径名。

[root@server ~]# cd /etc/
[root@server etc]# pwd
/etc
[root@server etc]# cd /etc/yum.repos.d/		//绝对路径
[root@server yum.repos.d]# pwd
/etc/yum.repos.d
[root@server yum.repos.d]# cd ..
[root@server etc]# cd yum.repos.d/		//相对路径
[root@server yum.repos.d]# pwd
/etc/yum.repos.d

4.文件和目录管理

ls 列出文件或目录,默认是列出当前目录下的文件和目录常用选项。
­-l 长格式显示文件属性。
ls ­-l 所显示的文件属性。
ll = ls -l 简写。
在这里插入图片描述

[root@server /]# ls -l
total 28
lrwxrwxrwx.   1 root root    7 Apr 23  2020 bin -> usr/bin
dr-xr-xr-x.   5 root root 4096 Dec 15 06:35 boot
drwxr-xr-x.  20 root root 3220 Dec 15 11:11 dev
drwxr-xr-x. 141 root root 8192 Dec 15 11:26 etc
drwxr-xr-x.   3 root root   18 Dec 15 06:30 home
lrwxrwxrwx.   1 root root    7 Apr 23  2020 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 Apr 23  2020 lib64 -> usr/lib64
drwxr-xr-x.   2 root root    6 Apr 23  2020 media
drwxr-xr-x.   3 root root   18 Dec 15 06:24 mnt
drwxr-xr-x.   2 root root    6 Apr 23  2020 opt
dr-xr-xr-x. 268 root root    0 Dec 15 11:11 proc
dr-xr-x---.  15 root root 4096 Dec 15 11:11 root
drwxr-xr-x.  41 root root 1200 Dec 15 11:13 run
lrwxrwxrwx.   1 root root    8 Apr 23  2020 sbin -> usr/sbin
drwxr-xr-x.   2 root root    6 Apr 23  2020 srv
dr-xr-xr-x.  13 root root    0 Dec 15 11:11 sys
drwxrwxrwt.  20 root root 4096 Dec 15 11:26 tmp
drwxr-xr-x.  12 root root  144 Dec 15 06:21 usr
drwxr-xr-x.  21 root root 4096 Dec 15 06:35 var
  • 1.文件类型 ­-普通文件 d目录 l链接文件。
  • 2.权限位,三位一组,共三组,分别是文件的属主、属组、others的权限。
  • 3.文件硬链接次数。
  • 4.属主。
  • 5.属组。
  • 6.文件大小。
  • 7.最后一次被修改的时间。
  • 8.文件名。

-­a 显示所有文件,包括当前目录和上级目录

[root@server /]# ls -a
. bin date etc lib media opt root sbin sys usr
.. boot dev home lib64 mnt proc run srv tmp var

-­A 显示所有文件

[root@server /]# ls -A
bin date etc lib media opt root sbin sys usr boot dev home lib64 mnt proc run srv tmp var

-­R 递归显示,可以查看每个文件夹下的所有文件

[root@server ~]# ls -R
.:
anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures  Templates Desktop Downloads Music Public Videos
./Desktop:
./Documents:
./Downloads:
./Music:
./Pictures:
./Public:
./Templates:
./Videos:

-­h 以K,M,G单位显示文件大小

[root@server ~]# ls -l /etc/passwd 
-rw-r--r--. 1 root root 2658 Dec 15 06:30 /etc/passwd
[root@server ~]# ls -lh /etc/passwd
-rw-r--r--. 1 root root 2.6K Dec 15 06:30 /etc/passwd

-­H 显示符号链接文件本身的属性

[root@server ~]# touch 123.txt
[root@server ~]# ln -s 123.txt 111		//给123.txt创建一个软链接
[root@server ~]# ls -l 111
lrwxrwxrwx. 1 root root 7 Jan  3 10:02 111 -> 123.txt
[root@server ~]# ls -l -H 111
-rw-r--r--. 1 root root 0 Jan  3 10:02 111

-­d 显示目录自身属性

[root@server ~]# ls -l /root/		//查看当前目录下所有文件及文件夹属性
total 8
lrwxrwxrwx. 1 root root    7 Jan  3 10:02 111 -> 123.txt
-rw-r--r--. 1 root root    0 Jan  3 10:02 123.txt
-rw-------. 1 root root 1401 Jan  2 14:08 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Desktop
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Documents
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Downloads
-rw-r--r--. 1 root root 1556 Jan  2 14:15 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Music
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Pictures
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Public
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Templates
drwxr-xr-x. 2 root root    6 Jan  2 14:16 Videos
[root@server ~]# ls -l -d /root/
dr-xr-x---. 15 root root 4096 Jan  3 10:02 /root/

5.file 查看文件类型

[root@server ~]# echo "123456" > 123.txt
[root@server ~]# file 123.txt
123.txt: ASCII text
[root@server ~]# cd /
[root@server /]# file etc
etc: directory

6.cd 切换目录

cd ~ 切换到当前用户的家目录中
cd - 切换到上一次所在的目录

[root@server ~]# cd /etc/yum.repos.d/
[root@server yum.repos.d]# pwd		//查看当前所在目录
/etc/yum.repos.d
[root@server yum.repos.d]# cd ~
[root@server ~]# pwd
/root
[root@server ~]# cd /home/user/
[root@server user]# pwd
/home/user
[root@server Desktop]# cd -
/home

7.相对路径和绝对路径

相对路径:不以"/“开始,以当前路径作为参照
. 表示当前目录
… 表示当前目录的上一级目录
绝对路径:所有以”/"开始的路径都是绝对路径

[root@server ~]# cd /home/user/
[root@server user]# cd ..
[root@server home]# cd /
[root@server /]#

8.基础文件管理

8.mkdir 创建目录

-­p 递归创建
-­v 显示创建过程
{} 展开花括号中的内容(同时创建{}里的文件夹)

[root@server ~]# mkdir -p /server/{file1,file2}
[root@server ~]# cd /server/
[root@server server]# ls
file1  file2
[root@server server]# cd
[root@server ~]# mkdir -p /a/b/c/123 [绝对路径]
[root@server ~]# cd /
[root@server /]# cd a
[root@server a]# cd b
[root@server b]# cd c
[root@server c]# ls
123
[root@server c]# pwd
/a/b/c
[root@server c]# cd /home/user
[root@server user]# mkdir usecp/file -p [相对路径]
[root@server user]# cd usecp/
[root@server usecp]# ls
file
[root@server usecp]# cd ..
[root@server home]# mkdir usecp/test{1,2,3} -p
[root@server home]# cd usecp/
[root@server usecp]# ls
file  test1  test2  test3

9.touch 创建文件

[root@server usecp]# cd /home/user/
[root@server user]# touch 1.txt
[root@server user]# ls
1.txt    Documents  Music     Public     usecp
Desktop  Downloads  Pictures  Templates  Videos

10.mv 移动文件或目录

mv 源文件 目标
在这里插入图片描述

[root@server user]# mkdir usemv
[root@server user]# mkdir source
[root@server user]# cd usemv/
[root@server usemv]# mkdir destination
[root@server usemv]# mkdir source     
[root@server usemv]# cd source/
[root@server source]# touch 123.txt
[root@server source]# cd /home/user/usemv/
[root@server usemv]# ls -R
.:
destination  source
./destination:
./source:
123.txt
[root@server usemv]# mv source/123.txt destination/
[root@server usemv]# ls -R
.:
destination  source

./destination:
123.txt

./source:
[root@server usemv]#

如何将多个目录mv到一个目录中?

[root@server usemv]# su user
[user@server usemv]$ cd
[user@server ~]$ mkdir usemkdir
[user@server ~]$ cd usemkdir/
[user@server usemkdir]$ mkdir a1x a2x a3x
[user@server usemkdir]$ touch b1 b2 b3
[user@server usemkdir]$ ls
a1x  a2x  a3x  b1  b2  b3
[user@server usemkdir]$ mv b1 b2 b3 -t a1x		//-t后面必须紧跟mv后的目录

[user@server usemkdir]$ mv ­-t a1x b1 b2 b3
[user@server usemkdir]$ ls 
a1x  a2x  a3x
[user@server usemkdir]$ cd a1x/
[user@server a1x]$ ls
b1  b2  b3
[user@server a1x]$ mv ./* ..		//将当前目录中的所有文件mv的上级目录
[user@server a1x]$ ls
[user@server a1x]$ cd ..
[user@server usemkdir]$ ls
a1x  a2x  a3x  b1  b2  b3
[root@server usemkdir]$ 

11cp 拷贝文件

在这里插入图片描述

[user@server usemkdir]$ su root
Password: 
[root@server usemkdir]# cd /home/user/usemv
[root@server usemv]# ls -R
.:
destination  source
./destination:
123.txt
./source:
[root@server usemv]# cp -a destination/123.txt source/
[root@server usemv]# ls -R
.:
destination  source
./destination:
123.txt
./source:
123.txt
[root@server usemv]#cp destination/123.txt source/456.txt		//把123.txt复制到目标文件夹下以后,并修改文件名为456.txt
[root@server usemv]# ls -R
.:
destination  source
./destination:
123.txt                         
./source:
123.txt  456.txt
[root@server usemv]#
[root@server user]# ls
1.txt      Downloads  Public     usecp     Videos
Desktop    Music      source     usemkdir
Documents  Pictures   Templates  usemv
[root@server user]# cp usemv/ usecp/
cp: -r not specified; omitting directory 'usemv/'
[root@server user]# cp -r usemv/* usecp/
[root@server user]# cd usecp/
[root@server usecp]# ls
destination  file  source  test1  test2  test3
[root@server usecp]# su user
[user@server usecp]$ cd
[user@server ~]$ touch 111.txt
[user@server ~]$ ls -l
total 0
-rw-rw-r--. 1 user user  0 Jan  4 11:04 111.txt
-rw-r--r--. 1 root root  0 Jan  4 09:47 1.txt
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Desktop
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Documents
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Downloads
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Music
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Pictures
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Public
drwxr-xr-x. 2 root root  6 Jan  4 10:01 source
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Templates
drwxr-xr-x. 8 root root 90 Jan  4 10:46 usecp
drwxrwxr-x. 5 user user 69 Jan  4 10:19 usemkdir
drwxr-xr-x. 4 root root 39 Jan  4 10:02 usemv
drwxr-xr-x. 2 user user  6 Jan  4 09:16 Videos
[root@server user]# cp 111.txt source/
[root@server user]# cd source/
[root@server source]# ls -l
total 0
-rw-r--r--. 1 root root 0 Jan  4 12:09 111.txt		//与原文件的属性不同,属主和属组都被改变
[root@server source]# cd ..
[root@server user]# cp -p 111.txt usemv
[root@server user]# cd usemv 
[root@server usemv]# ls -l
total 0
-rw-rw-r--. 1 user user  0 Jan  4 11:04 111.txt		//与原文件的属性相同
drwxr-xr-x. 2 root root 21 Jan  4 10:09 destination
drwxr-xr-x. 2 root root 36 Jan  4 10:24 source

12rm 删除文件或目录

-­f 强制删除不提示
-­i 提示是否删除(默认选项)
-­r 递归删除目录及目录中的所有文件

[root@server user]# ls
111.txt  Documents  Pictures  Templates  usemv
1.txt    Downloads  Public    usecp      Videos
Desktop  Music      source    usemkdir
[root@server user]# rm -i 1.txt 
rm: remove regular empty file '1.txt'? yes
[root@server user]# ls
111.txt    Downloads  Public     usecp     Videos
Desktop    Music      source     usemkdir
Documents  Pictures   Templates  usemv
[root@server user]# rm -f 111.txt 
[root@server user]# ls
Desktop    Downloads  Pictures  source     usecp     usemv
Documents  Music      Public    Templates  usemkdir  Videos
[root@server user]# mkdir 123 
[root@server user]# cd 123/
[root@server 123]# touch 222
[root@server 123]# pwd
/home/user/123
[root@server 123]# ls
222
[root@server 123]# cd ..
[root@server user]# rm -f 123
rm: cannot remove '123': Is a directory
[root@server user]# rm -rf 123
[root@server user]# ls
Desktop    Downloads  Pictures  source     usecp     usemv
Documents  Music      Public    Templates  usemkdir  Videos
[root@server user]# rm -­rf /		//强制删除根目录下所有文件,RHEL7,8系统做了保护
rm: it is dangerous to operate recursively on '/'
rm: use --no-preserve-root to override this failsafe
[root@server user]# rm ­-rf / ­­--no-preserve-root		//强制删除根目录下所有文件

13.文件通配在ls cp rm等文件管理命令重经常会用到。

使用通配符来表示某一类文件。
在这里插入图片描述

14.文件归档 压缩

tar 文件归档打包工具:
将多个文件或目录打包成一个文件
在这里插入图片描述
在这里插入图片描述

[root@server user]# mkdir usetar
[root@server user]# cd usetar/
[root@server usetar]# touch file1.txt file2.txt
[root@server usetar]#tar -cf file.tar file1.txt file2.txt
file1.txt
file2.txt
[root@server usetar]# ls
file1.txt  file2.txt  file.tar
[root@server usetar]# tar -tvf file.tar
-rw-r--r-- root/root         0 2020-01-04 14:10 file1.txt
-rw-r--r-- root/root         0 2020-01-04 14:10 file2.txt
[root@difu1909 usetar]# tar -­xvf file.tar
file1.txt
file2.txt

归档并压缩
tar 本身不具备压缩功能,可以通过调用其它压缩工具进行压缩。
linux下常用的压缩工具:gzip bzip2
-­z 使用gizp压缩
-­j 使用bzip2压缩
-J 使用xz压缩
常用的组合选项:
-­czvf 创建归档文件并使用gzip压缩

[root@server usetar]# cd ..
[root@server user]# mkdir usemk
[root@server user]# cd usemk
[root@server usemk]# touch file1.txt file2.txt file3.txt  
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt
[root@server usemk]# tar -czvf file.tar.gzip file1.txt file2.txt file3.txt 
file1.txt
file2.txt
file3.txt
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.gzip
[root@server usemk]# file file.tar.gzip 
file.tar.gzip: gzip compressed data, last modified: Sat Jan  4 19:48:30 2020, from Unix, original size 10240

-­xzvf 提取并使用gzip解压归档文件

[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.gzip
[root@server usemk]# rm -rf ./*.txt
[root@server usemk]# ls
file.tar.gzip
[root@server usemk]# tar -xzvf file.tar.gzip
file1.txt
file2.txt
file3.txt
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.gzip

-­cjvf 创建归档文件并使用bzip2压缩

[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.gzip
[root@server usemk]# tar -cjcf file.tar.bzip file1.txt file2.txt file3.txt 
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip file.tar.gzip
[root@server usemk]# file file.tar.bzip 
file.tar.bzip: bzip2 compressed data, block size = 900k
[root@server usemk]#

-­xjvf 提取并使用bzip2解压归档文件

[root@server usemk]# rm -rf ./*.txt
[root@server usemk]# ls
file.tar.bzip  file.tar.gzip
[root@server usemk]# tar -xjvf file.tar.bzip
file1.txt
file2.txt
file3.txt
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip file.tar.gzip

-­cJvf 创建归档文件并使用xz压缩

[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip  file.tar.gzip
[root@server usemk]# tar -cJvf file.tar.xz file1.txt file2.txt file3.txt 
file1.txt
file2.txt
file3.txt
[root@server usemk]# ls
file1.txt  file3.txt      file.tar.gzip
file2.txt  file.tar.bzip  file.tar.xz
[root@server usemk]# file file.tar.xz
file.tar.xz: XZ compressed data
[root@server usemk]# 

-­xJvf 提取并使用xz解压归档文件

[root@server usemk]# rm -rf ./*.txt
[root@server usemk]# ls
file.tar.bzip  file.tar.gzip  file.tar.xz
[root@server usemk]# tar -xJvf file.tar.xz
file1.txt
file2.txt
file3.txt
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip  file.tar.gzip  file.tar.xz

小总结:
tar ­-czvf [创建归档并gzip压缩]
tar -­xzvf [提取gzip压缩的归档文件]
tar ­-cjvf [创建归档并使用bzip2压缩]
tar ­-cJvf [创建归档并使用xz压缩]

[root@server user]# tar -czvf /home/user/file.tar.gzip /home/user/usemkdir
// /home/user/file.tar.gzip归档后的目标路径 /home/user/usemkdir文件源路径

其它一些常用的压缩文件工具
ZIP工具
压缩:

[root@server usemk]# zip file.zip file1.txt file2.txt file3.txt
  adding: file1.txt (stored 0%)
  adding: file2.txt (stored 0%)
  adding: file3.txt (stored 0%)
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip  file.tar.gzip  file.tar.xz  file.zip
[root@server usemk]# file file.zip 
file.zip: Zip archive data, at least v1.0 to extract

解压缩:

[root@server usemk]# rm -rf ./*.txt 
[root@server usemk]# ls
file.tar.bzip  file.tar.gzip  file.tar.xz  file.zip
[root@server usemk]# unzip file.zip 
Archive:  file.zip
 extracting: file1.txt               
 extracting: file2.txt               
 extracting: file3.txt               
[root@server usemk]# ls
file1.txt  file2.txt  file3.txt  file.tar.bzip  file.tar.gzip  file.tar.xz  file.zip

15.rename的使用

[root@server use123]# for i in `seq -w 10` 【`这个符号是tab键上面那个符号】
> do touch ab\_$i\_file.txt
> done

[root@server usere]# for i in `seq ­w 10` ; do touch
ab_"$i"_file.txt; done
[root@server usere]# mkdir usere
[root@server usere]# cd usere/
[root@server usere]# for i in `seq -w 10` ; do touch ab_"$i"_file.txt; done
[root@server usere]# ls -l
total 0
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_01_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_02_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_03_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_04_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_05_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_06_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_07_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_08_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_09_file.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_10_file.txt
[root@server usere]# rename \file 'user' *.txt
[root@server usere]# ls -l
total 0
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_01_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_02_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_03_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_04_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_05_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_06_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_07_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_08_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_09_user.txt
-rw-r--r--. 1 root root 0 Jan  4 15:40 ab_10_user.txt

16.文件查找:

which:查找命令
locate:基于数据库查找,查找速度快,需要更新数据库。(不常用)
find:遍历查找,搜索速度慢,精确。(常用)

[root@server user]# which ps
/usr/bin/ps
[root@server user]# which type
/usr/bin/type

[which 查找仅限于这几个目录]
(/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
find [路径] [选项] [动作]
路径:搜索的范围,默认当前目录
选项:搜索条件,默认所有文件
动作:搜索到文件后执行的动作,默认动作是显示

在这里插入图片描述

[root@server ~]# mkdir /home/user/find
[root@server usetar]# find / -size +5M -type f		//查找根目录下所有大于5M的文件
[root@server usetar]# find / -perm 777 -type l		//查找根目录下所有文件权限为777的链接文件

动作:
默认是显示查找的内容
- exec :把查找到的内容交给exec后面的命了执行

[root@server ~]# find /tmp/ ­size +5M ­exec cp ­a {} /home/user/find/ \;
[root@server ~]# find /etc/ ­size +1M ­exec cp ­a ­v {} /home/user/find/ \;

ok:跟exec的区别是需要确认

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

Linux命令编辑

一般说的“命令行”是指linux命令,linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell(外壳)命令和Linux命令。

二、随笔写的基础命令

1.文件目录基础命令

	cd /home			//进入 '/ home' 目录'
	cd ..				//返回上一级目录
	cd ../..			//返回上两级目录
	cd					//进入个人的主目录
	cd ~user1			//进入个人的主目录
	cd -				//返回上次所在的目录
	pwd					//显示工作路径
	ls					//查看目录中的文件
	ls -F				//查看目录中的文件
	ls -l				//显示文件和目录的详细资料
	ls -a				//显示隐藏文件
	ls -R				//显示目录结构和目录内文件
	ls *[0-9]*			//显示包含数字的文件名和目录名
	tree				//显示文件和目录由根目录开始的树形结构(1)
	lstree				//显示文件和目录由根目录开始的树形结构(2)
	mkdir dir1			//创建一个叫做 'dir1' 的目录'
	mkdir dir1 dir2		//同时创建两个目录
	mkdir -p /tmp/dir1/dir2		//创建一个目录树
	rm -f file1					//删除一个叫做 'file1' 的文件'
	rmdir dir1					//删除一个叫做 'dir1' 的目录'
	rm -rf dir1					//删除一个叫做 'dir1' 的目录并同时删除其内容
	rm -rf dir1 dir2			//同时删除两个目录及它们的内容
	mv dir1 new_dir				//重命名/移动 一个目录
	cp file1 file2				//复制一个文件
	cp dir/* .					//复制一个目录下的所有文件到当前工作目录
	cp -a /tmp/dir1 .			//复制一个目录到当前工作目录
	cp -a dir1 dir2				//复制一个目录
	ln -s file1 lnk1				//创建一个指向文件或目录的软链接
	ln file1 lnk1				//创建一个指向文件或目录的物理链接
	touch -t 0712250000 file1	修改一个文件或目录的时间戳 - (YYMMDDhhmm)

2.文件搜索基础命令

	find / -name file1 从 '/'			//开始进入根文件系统搜索文件和目录
	find / -user user1				//搜索属于用户 'user1' 的文件和目录
	find /home/user1 -name \*.bin	//在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
	find /usr/bin -type f -atime +100		//搜索在过去100天内未被使用过的执行文件
	find /usr/bin -type f -mtime -10			//搜索在10天内被创建或者修改过的文件
	find / -name \*.rpm -exec chmod 755 '{}' \;		//搜索以 '.rpm' 结尾的文件并定义其权限
	find / -xdev -name \*.rpm				//搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备
	locate \*.ps		//寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令
	whereis halt		//显示一个二进制文件、源码或man的位置
	which halt			//显示一个二进制文件或可执行文件的完整路径

3.文件系统基础命令

	mount /dev/hda2 /mnt/hda2		//挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在
	umount /dev/hda2		//卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出
	fuser -km /mnt/hda2		//当设备繁忙时强制卸载
	umount -n /mnt/hda2		//运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用
	mount /dev/fd0 /mnt/floppy				//挂载一个软盘
	mount /dev/cdrom /mnt/cdrom				//挂载一个cdrom或dvdrom
	mount /dev/hdc /mnt/cdrecorder			//挂载一个cdrw或dvdrom
  
	mount -o loop file.iso /mnt/cdrom		//挂载一个文件或ISO镜像文件
	mount -t vfat /dev/hda5 /mnt/hda5		//挂载一个Windows FAT32文件系统
	mount /dev/sda1 /mnt/usbdisk			//挂载一个usb 捷盘或闪存设备
	mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share		//挂载一个网络共享

4.磁盘空间基础命令

	df -h							//显示已经挂载的分区列表
  	ls -lSr |more					//以尺寸大小排列文件和目录
	du -sh dir1 估算目录 'dir1'		//已经使用的磁盘空间'
	du -sk * | sort -rn				//以容量大小为依据依次显示文件和目录的大小
	rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n		//以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)
	dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的 空间 (ubuntu, debian类系统)

END

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值