Linux——文件管理命令、路径命令

一、文件管理命令

1. 文件建立:

touch filename
注意:
touch不但可以建立文件也可以修改文件的时间戳
时间戳分为:
atime:文件内容被访问的时间标识
mtime:文件内容被修改的时间标识
ctime:文件属性或文件内容被修改的时间标识

1)无选项

若文件不存在,则创建新的空文件,access time,modify time和change time均为当前时间;若文件存在,则将三个时间戳均修改为当前时间

2)-a:

只修改文件的access time
(ps:access time修改后,change time也被修改(因为状态发生了改变))

3)-m:

只修改文件的modify time
(注意:modify time修改后,change time也被修改(因为状态发生了改变)

4)-d:

使用指定的日期时间,而非现在的时间,可以使用各种不同的格式。

5)-t:

将时间修改为参数指定的日期,如:07081556代表7月8号15点56分
注意:change time发生了变化,变成了当前时间。
该选项的时间格式为[[CC]YY]MMDDhhmm[.ss]
cc:世纪
yy:年
mm:月
dd:日
hh:小时
mm:分钟
ss:秒

2. 文件目录建立
	mkdir	    directory
	mkdir  -p   dir1/dir2/dir3
   -p建立递归目录时,当上层目录不存在自动建立	
3. 文件删除
	rm file
	rm -f file	
	-f=force 	#表示强制删除不提示

4. 目录删除

	rm -r	 directory	
	-r标示递归删除,也就是删除目录本身和里面的所有内容
	rm -r -f dir				
	删除目录不提示
	rm -rf 	 dir	
	在命令参数使用过程中,-a -b -c =-abc =-bac ,顺序是不需要注意的。
	rm -fr dir
5. 编辑文件

1.gedit
gedit file ##必须有图形界面

2.vim
vim file -->按[i]进入insert模式–>书写内容–>按[esc]退出insert模式–>:wq退出保存

6. vim异常退出

vim异常退出时会生成.file.swp文件
当再次打开vim时会出现以下问题,一般按D

[o]pen Read-Onle  [E]dit anyway	  [R]ecover  [D]elet it    [Q]uit   [A]bort
打开只读		      继续编辑	       恢复	     删除swap文件     退出     退出

无论按[O] (E) ( R) (Q) (A) 任何一个都不会删除.swp文件
那么再次打开hello文件是还会出现以上界面直到按(D),.swp文件被删除
vim恢复正常工作

7. 文件的复制
cp		   源文件		       目的地文件	
cp 	-r	   源文目录	   	       目的地目录
cp  	   源文件1 源文件2      目的地目录	#目的地目录必须存在
cp  -r 	   源目录1 源目录2	   目的地目录	#目的地目录必须存在

cp    test    test1 				#复制test生成test1   				
     源文件	  目的地文件
cp -r test/   test1/				#复制test目录生成在test1目录		
     源目录  目的地目录
cp    test   test1    test2/        #复制test和test1文件进test2目录下   	
     源文件1 源文件2  目的地目录		test2目录必须存在
cp -r test1/ test2/ test3/  		#复制test1和test2目录进test3目录下	
    源目录1 源目录2  目的地目录		test3目录必须存在
cp -r test/test1  test2/            #将test文件夹下的test1复制进test2目录
cp  file1(存在)  file2(不存在)
会创建file2,并且把file1中的内容拷贝到file2中
cp  file1(存在)  file2(存在)
file1会覆盖file2
cp  file1  		   dir(存在)
拷贝file1到dir目录
cp dir(存在)  	   dir1(存在)
将dir目录拷贝到dir1目录中,包括dir目录
cp dir(存在)      dir1(不存在)
创建dir1,将dir中的内容考培到dir1中,不包括dir目录
8. 文件移动或者文件改名
mv 		源文件		   目的地文件	##重命名
mv		源目录		   目的地目录	

mv	 test 	 test2      #源文件   目的地文件   	相当于重命名,和cp复制不同
mv	 test2 	 test3/     #源文件   目的地目录
mv 	 test3/  test4/     #源目录   目的地目录      把test3文件夹移到test4下
mv test3/test  .        #把test3文件夹下test移动到当前目录

注意:
相同磁盘的文件移动只是一个重明名过程
不同磁盘的文件移动是复制删除过程

mv file(存在) 		file1(不存在)  --file为文件
改名
mv dir(存在)		dir(不存在)		--dir为目录
改名
mv  file(存在) 	file2(存在)
file文件覆盖file2,而且file文件不存在
mv  file(文件)  	dir(存在目录)
将file文件移动到dir目录中
mv dir(目录存在)	dir1(存在目录)
将dir移动到dir1中
9. 文件查看
cat  		file		#查看文件的全部内容
cat   -b	file		#-b显示行号
less		file		#分页浏览 

用法:

|下				#逐行移动
pageup|pagedown		#逐页移动
/关键字				#高亮显示关键字,n向下匹配,N向上匹配
v					#进入vim模式 在vim模式中按:wq 退回到less模式
q					#退出

cat test 			#全部显示
cat -b test     	#行号显示
head test 			#显示前10行
head -n 3 test		#显示前3行
tail test			#显示后10行
tail -n  test		#显示后3行

less test  			#分页浏览
用法:
方向上下   			#按行上下
pageup/down			#按页上下
/关键字				#查找关键字
v					#进入vim模式,在vim中按:wq就返回到less模式(其余操作同vim)
q					#推出less模式
10. 文件的寻址

1.文件的地址分为:
相对路径:
相对与当前系统所在目录的一个文件名称的简写,
此名称省略了系统当前所在目录的名称
此名称不以“/”开头
此名称在命令执行时会自动在操作对象前加入“PWD”所显示的值

绝对路径:
绝对路径是文件在系统的真实位置
此命令是以“/”开头的
此命令在命执行时系统不会考虑现在所在位置的信息
注意:
当操作对象是 对象1 空格 对象2 时,
这两个对象之间没有任何关系

	豆角 茄子		#这是2个对象
	豆角茄子			#这是一个对象
	亲				#动作是被系统执行的,不能作为名称出现
	“亲”			#用引号的作用是把动作变成名称字符,这种方法叫引用,动词名词化
11. 自动补齐

TAB
系统中的TAB键可以实现命令的自动补齐 (文件/参数都可补)

可以补齐系统中存在的命令,文件名称,和部分命令的参数
当一次TAB补齐不了时代表以此关键字开头的内容不唯一
可以用TABX2来列出所有以此关键字开头的内容

12. 系统中历史的调用
history				#查看历史
history -c			#清空当前环境中的历史
!数字				#调用此行历史比如"!5"时执行历史中地5条命令
!test				#执行以test关键字开头的最近一条历史
ctrl +r +关键字		#调用历史中最近一条含有此关键字的历史
例:
(reverse-i-search)`':test
(reverse-i-search)`test': sh test.sh 10		#会调用最近一条命令中含有test字符的历史
13. 在系统中获得帮助
1.查看命令大用途

whatis 命令 #查看命令的用途

2.查看命令的用法
命令 --help			#查看命令的基本用法,适用于多数命令

代码?

[]					#标示选项可以加也可以不加
...					#标示选项加入的个数任意,可以自由组合
<>					#标示选项是必须要加入的
Userage:			#标示命令用法
Opetions:			#对参数的作用做说明
3.man查看命令或文件的说说明手册(manual手册)
man 	命令
man 5 	文件

代码?

man的级别
1	#命令
2	#系统调用接口
3	#函数库调用接口
4	#特殊设备文件
5	#系统配置文件
6	#游戏规则说明
7	#包说明
8	#系统管理命令
9	#内核调用规则

man的基本用法
上|下			#逐行查看
pgup|pgdn		#分页查看
/关键字			#高亮显示关键字,n向下匹配,N上向匹配
:q				#退出
man -k	字符串	#下看当前字符串在系统中拥有的man的级别
/usr/share/doc	#系统中所有安装过的软件的帮助文档
14. 系统中的通用配置符号
*				##匹配到任意字符
?				##匹配单个字符
[[:alpha:]]		##单个字母	    
例:rm -fr fi[[:alpha:]]le  					#删除fiale和fiAlae
[[:lower:]]		##单个小写字母				    
rm -fr fi[[:lower:]]le							#删除fiale
[[:upper:]]		##单个大写字母				   
rm -fr fi[[:upper:]]le						    #删除fiAlae
[[:digit:]]		##单个数字
[[:punct:]]		##单个符号
[[:space:]]		##单个空格
[[:alnum:]]		##单个数字或字母
[[:punct:][:upper:]]  ##单个符号或者单个大写字母
[1-9]			#1位,这位是1-9的任意数字
[!3-5]			#1位,不是3-5的数字			模糊匹配 要用-
[^3-5]			#1位,不是3-5的数字
[a-z]			#1位,a-z的任意字母
{1..3}			#3个,1 2 3
{1,4,7}			#3147这三个数			精确匹配,不可连续到一起。 要用..
例:
touch file{1..9}	#创建file1 file2 一直到file9,创建时必须精确
rm -fr file[1-3]	#删除file1 file2和file3
rm -fr file[!2-9]	#删除file1 


~				#当前用户家目录
~username		#指定用户的家目录
~+				#当前目录
~-				#进入当前目录之前所在目录(olddir)	
15.软硬链接ln

1)软链接,快捷方式

ln -s 文件名 快捷方式的名字
文件名要使用绝对路径
目录页可以创建软链接

2)硬链接,引用(磁盘的同一个数据块)

ln 文件名  硬链接的名字
创建一个新文件,硬链接计数为:1
给文件创建了硬链接:2
删除一个硬链接:1
再删除硬链接计数对应的文件:0

硬链接使用场景:磁盘上有一个文件,需要在其他多个目录中管理该文件,并且能实时同步
16.find、grep
1.根据文件属性查找-find
文件名:
	find  查找的目录  -name “查找的文件名”
文件类型:
	find  ./ -type d
 	普通文件:f,目录:d,符号链接:l,管道:p,套接字:s,字符设备:c,块设备:b
文件大小:(可以组合成区间)
	find 查找目录 -size -10M
	大于:+,小于:-,等于10K:10K,K或者M
	(可以组合成区间):find . -size +10K -size -100K
按日期:
	创建时间:-ctime	-n/+n
	-n:n天以内,+n:n天以外
	修改日期:-mtime
	访问日期:-aime
深度:
	-maxdepth n(最深层数,n层以下的目录)
	-mindepth n(最少层数,n以上的目录)
高级查找:
	查找指定目录,并列出该目录中文件详细信息
	find ./ -type d -exec shell命令(ls -l) {} \;
	find ./ -type d -ok shell命令(ls -l) {} \;
	ok比较安全
以上效率比较低
	file ./ -type d| xargs ls -l (shell命令)   此方法效率高
2.根据文件内容查找-grep
grep -r(搜索的路径有目录时,一般都加)  “查找的内容”  搜索的路径
grep -r "helloworld" ~  -n(显示行号)
搜索家目录中带helloworld字符串的文件,并显示行号

总结:

find  搜索路径   参数  搜索内容
grep  搜索内容   参数  搜索路径

二、关于路径的命令

1.显示当前路径

pwd

2.切换路径
	cd 目录名称		#进入到指定目录中
	cd -			#当前目录和当前目录值前所在目录之间的切换
	cd ~			#进入当前用户家目录
	cd ~user 		#进入user家目录
	cd ..			#进入当前目录的上级目录
3.查看
	ls               #查看文件
	ls -l	file	 #文件属性
	ls	dir			 #目录中包含的内容
	ls -d	dir		 #目录本身
	ls -a	dir		 #所有文件包含隐藏的
	ls -S	dir		 #查看并且按照大小排序
	ls -s   file/dir #查看文件大小
4.文件查看
	cat					#输出文件全部内容
	less				#分页浏览
	head 		 file	#查看文件前10行
	head  -n 3   file	#查看文件前3行
	tail 		 file	#查看文件后10行
	tail  -n 3 	 file	#查看文件后3行
	tail  -f	 file	#监控文件后10行内容的变化
5.文件大小统计
	wc		#行数 单词数 字节数
	wc -l	#行数
	wc -w	#单词数
	wc -m	#字符数
	wc -c	#字节数
	ASCII码:一个英文字母占一个字节的空间,一个中文汉字占两个字节的空间。
	UTF-8编码:一个英文字符等于一个字节,一个中文等于三个字节。
	Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。
	当前linux采用UTF-8:一个英文字符等于一个字节,一个中文等于三个字节
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值