七里八里 发表于 2023-12-5 18:34:54

Linux-01常用文件管理命令

文件系统

文件系统结构

tip:仅举例常见内容tip:

[*]/ 根目录

[*]bin 可执行文件命令 (ls,...)
[*]etc 配置文件 (nginx代理服务器配置文件,...)
[*]var 日志log文件
[*]lib 存头文件/安装包
[*]home 用户的家目录 (/home/acs,...)
[*]proc 进程信息文件 (cpuinfo系统资源,...)

路径


[*]绝对路径:从根目录开始描述 /home/acs/main.cpp
[*]相对路径:从当前路径(在home下)开始描述 acs/main.cpp
[*]当前目录:./
[*]上级目录:../
[*]家目录:~/ == /home/acs
[*]根目录:/
文件管理常用指令


[*]homework n show/create/test :仅在acwing服务器中适用,作业相关
[*]ctrl c:取消命令,并且换行,关掉当前进程
[*]history:显示历史操作
[*]ctrl u:清空本行命令
[*]tab:可以补全命令和文件名,如果补全不了快速按两下tab键,可以显示备选选项
[*]ls:列出当前目录下所有文件,蓝色的是文件夹,白色的是普通文件,绿色的是可执行文件

[*]ls -l:文件长信息 权限 大小 修改时间
[*]ls -lh:人性化输出长信息(带h的都是长信息)
[*]ls -a:隐藏文件也可以看(文件要是.开头就是隐藏文件)
[*]ls -A:不显示当前和上一级目录
[*]ll:是ls -la的简写

[*]pwd:显示当前路径(绝对路径)
[*]cd XXX:进入XXX目录下,目录可以是相对路径也可以是绝对路径

[*]cd ..:返回上层目录
[*]cd -:返回上一次访问的目录,一直用就是两个目录来回切换
[*]cd:不管在什么地方 cd就会返回家目录

[*]cp XXX YYY:将XXX复制成YYY,XXX和YYY可以是一个路径/文件

[*]cp a/tmp.txt b:复制+粘贴文件
[*]cp a/tmp.txt b/tmp2.txt:复制+粘贴+重命名
[*]cp a b -r:复制+粘贴a文件夹到b文件夹下
[*]cp a c -r:将a在当前文件夹下复制一份命名为c(此时c不存在)

[*]mv XXX YYY:将XXX文件移动到YYY,和cp命令一样,XXX和YYY可以是一个路径,重命名也是用这个命令

[*]mv a/tmp.txt b:剪切+粘贴+重命名
[*]与cp用法相同

[*]mkdir XXX:创建目录XXX

[*]mkdir y c:创建y和c两个文件夹,带空格要加转义字符\
[*]mkdir y\ c:创建y c一个文件夹
[*]mkdir a/b/c -p:创建一串目录,-p有就跳过没有就创建

[*]rm XXX:删除普通文件

[*]rm XXX -r:删除文件夹
[*]rm tmp1.txt tmp2.txt:删除多个文件

[*]支持正则:rm *.txt删除全部以txt为后缀的文件
[*]rm * -r:删除全部文件
[*]rm a/*:删除a目录下全部文件,不删除文件夹
[*]rm a/* -r:删除a目录下全部文件,不删除保护文件
[*]rm a/* -rf:删除a目录下全部文件,包括保护文件(危!)
[*]rm /* -rf:删除所有文件,'/'表示根目录!


[*]touch XXX:创建一个文件
[*]cat XXX:展示文件XXX中的内容
[*]复制文本

[*]windows/Linux下:Ctrl + insert
[*]Mac下:command + c

[*]粘贴文本

[*]windows/Linux下:Shift + insert
[*]Mac下:command + v

练习

(0) 创建好作业后,先进入文件夹/home/acs/homework/lesson_1/
acs@07e1e01d2ed1:~$ homework 1 create
acs@07e1e01d2ed1:~$ cd ~/
acs@07e1e01d2ed1:~$ ls
homework
acs@07e1e01d2ed1:~$ cd homework
acs@07e1e01d2ed1:~/homework$ ls
lesson_1
acs@07e1e01d2ed1:~/homework$ cd lesson_1/

(0) 进入homework_0文件夹,分别创建文件夹dir_a, dir_b, dir_c
acs@07e1e01d2ed1:~/homework/lesson_1$ ls
homework_0homework_2homework_4homework_6homework_8
homework_1homework_3homework_5homework_7homework_9
acs@07e1e01d2ed1:~/homework/lesson_1$ cd homework_0
acs@07e1e01d2ed1:~/homework/lesson_1/homework_0$ mkdir dir_a dir_b dir_c
acs@07e1e01d2ed1:~/homework/lesson_1/homework_0$ ls
dir_adir_bdir_c

(1) 进入homework_1文件夹,将a.txt, b.txt, c.txt 分别复制成: a.txt.bak, b.txt.bak, c.txt.bak
acs@07e1e01d2ed1:~/homework/lesson_1/homework_0$ cd ../homework_1
acs@07e1e01d2ed1:~/homework/lesson_1/homework_1$ ls
a.txtb.txtc.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_1$ cp a.txt a.txt.bak
acs@07e1e01d2ed1:~/homework/lesson_1/homework_1$ cp b.txt b.txt.bak
acs@07e1e01d2ed1:~/homework/lesson_1/homework_1$ cp c.txt c.txt.bak

(2) 进入homework_2文件夹,将a.txt, b.txt, c.txt 分别重命名为: a_new.txt, b_new.txt, c_new.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_1$ cd ../homework_2
acs@07e1e01d2ed1:~/homework/lesson_1/homework_2$ mv a.txt a_new.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_2$ mv b.txt b_new.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_2$ mv c.txt c_new.txt

(3) 进入homework_3文件夹,将dir_a文件夹下的a.txt, b.txt, c.txt分别移动到文件夹dir_b下
acs@07e1e01d2ed1:~/homework/lesson_1/homework_2$ cd ../homework_3
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ mv dir_a/a.txt dir_b
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ mv dir_a/b.txt dir_b
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ mv dir_a/c.txt dir_b
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ ls dir_b/
a.txtb.txtc.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ ls dir_a

(4) 进入homework_4文件夹,将普通文件a.txt, b.txt, c.txt删除
acs@07e1e01d2ed1:~/homework/lesson_1/homework_3$ cd ../homework_4
acs@07e1e01d2ed1:~/homework/lesson_1/homework_4$ rm a.txt b.txt c.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_4$ ls

(5) 进入homework_5文件夹,将文件夹dir_a, dir_b, dir_c删除
acs@07e1e01d2ed1:~/homework/lesson_1/homework_4$ cd ../homework_5
acs@07e1e01d2ed1:~/homework/lesson_1/homework_5$ rm dir_a dir_b dir_c -r
acs@07e1e01d2ed1:~/homework/lesson_1/homework_5$ ls

(6) 进入homework_6文件夹,查看task.txt的内容,并按其指示进行操作
acs@07e1e01d2ed1:~/homework/lesson_1/homework_5$ cd ../homework_6
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6$ cat task.txt
将task.txt重命名为done.txt, 创建目录dir_a,将done.txt移动到目录dir_a下
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6$ mv task.txt done.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6$ mkdir dir_a
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6$ mv done.txt dir_a/
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6$ ls dir_a/
done.txt

(7) 进入homework_7文件夹,创建文件夹dir_0, dir_1, dir_2,
      将a.txt, b.txt, c.txt复制到dir_0下,重命名为a0.txt, b0.txt, c0.txt;
      将a.txt, b.txt, c.txt复制到dir_1下,重命名为a1.txt, b1.txt, c1.txt;
      将a.txt, b.txt, c.txt复制到dir_2下,重命名为a2.txt, b2.txt, c2.txt;
acs@07e1e01d2ed1:~/homework/lesson_1/homework_6/dir_a$ cd ../homework_7
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ mkdir dir_0 dir_1 dir_2
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ ls
a.txtb.txtc.txtdir_0dir_1dir_2
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp a.txt dir_0/a0.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp b.txt dir_0/b0.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp c.txt dir_0/c0.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ ls
a.txtb.txtc.txtdir_0dir_1dir_2
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp a.txt dir_1/a1.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp b.txt dir_1/b1.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp c.txt dir_1/c1.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ ls
a.txtb.txtc.txtdir_0dir_1dir_2
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp a.txt dir_2/a2.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp b.txt dir_2/b2.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cp c.txt dir_2/c2.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ cd dir_0
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7/dir_0$ ls
a0.txtb0.txtc0.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7/dir_0$ cd ../
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ ls dir_1
a1.txtb1.txtc1.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_7$ ls dir_2
a2.txtb2.txtc2.txt

(8) 进入homework_8文件夹,分别在dir_a, dir_b, dir_c文件夹下查看task.txt的内容,并分别按照指示进行操作
acs@07e1e01d2ed1:~/homework/lesson_1$ cd homework_8
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ ls
dir_adir_bdir_c
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ ls
dir_adir_bdir_c
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ cat dir_a/task.txt
将a.txt删除
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ rm dir_a/a.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ cat dir_b/task.txt
将b.txt重命名为b_new.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ ls dir_b
b.txttask.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ mv b.txt b_new.txt
mv: cannot stat 'b.txt': No such file or directory
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ mv dir_b/b.txt dir_b/b_new.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ cat dir_c/task.txt
将c.txt复制成c.txt.bak
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ cp dir_c/c.txt dir_c/c.txt.bak
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ ls dir_c
c.txtc.txt.baktask.txt

(9) 进入homework_9文件夹,将其中所有txt类型的文件删除
acs@07e1e01d2ed1:~/homework/lesson_1/homework_8$ cd ../homework_9
acs@07e1e01d2ed1:~/homework/lesson_1/homework_9$ ls
file_0.dmg   file_12.dmgfile_16.dmgfile_2.doc   file_23.txtfile_27.txtfile_4.dmgfile_8.dmg
file_1.ppt   file_13.pptfile_17.pptfile_20.dmgfile_24.dmgfile_28.dmgfile_5.pptfile_9.ppt
file_10.docfile_14.docfile_18.docfile_21.pptfile_25.pptfile_29.pptfile_6.doc
file_11.txtfile_15.txtfile_19.txtfile_22.docfile_26.docfile_3.txt   file_7.txt
acs@07e1e01d2ed1:~/homework/lesson_1/homework_9$ rm *.txt -r
acs@07e1e01d2ed1:~/homework/lesson_1/homework_9$ ls
file_0.dmg   file_12.dmgfile_16.dmgfile_2.doc   file_22.docfile_26.docfile_4.dmgfile_8.dmg
file_1.ppt   file_13.pptfile_17.pptfile_20.dmgfile_24.dmgfile_28.dmgfile_5.pptfile_9.ppt
file_10.docfile_14.docfile_18.docfile_21.pptfile_25.pptfile_29.pptfile_6.doc

(10) homework 1 test 可以评测lesson_1的所有作业
acs@07e1e01d2ed1:~/homework/lesson_1/homework_9$ cd ../../../
acs@07e1e01d2ed1:~$ homework 1 test
homework_0 is Right!
homework_1 is Right!
homework_2 is Right!
homework_3 is Right!
homework_4 is Right!
homework_5 is Right!
homework_6 is Right!
homework_7 is Right!
homework_8 is Right!
homework_9 is Right!
score: 100/100
来源:https://www.cnblogs.com/han-fei/p/17877827.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: Linux-01常用文件管理命令