[Linux]命令篇-文件目录管理

ls命令

命令功能 列出目标目录中所有的子目录和文件。
命令格式 ls [选项] [目录名]
常用选项

-a all,目录下所有文件,包括隐藏文件

  • 实例 列举/tmp 下面的所有文件
    命令 ls –a /tmp

-A 与 -a类似,但没有当前目录(.)和父目录(…)

-h 从K(千字节)、M(兆字节)、和G(千兆字节)中选择合适的单位显示文件的大小

  • 实例 列举/tmp 下面文件的信息(以合适的单位显示)
    命令 ls –lh /tmp

-l 列出每个文件的更多信息

  • 实例 列举/tmp 下面文件的信息
    命令 ls –l /tmp

-t 按最后一次修改时间的顺序显示文件

  • 实例 按修改时间的顺序(逆序)列举/tmp下面文件
    命令 ls –t /tmp

-u 按最后一次访问时间的顺序(逆序)显示文件

  • 实例 按修改时间的顺序(逆序)列举/tmp下面文件
    命令 ls –u /tmp

cd命令

命令功能 切换当前目录至dirName
命令格式 cd [目录名]
常用选项
空 进入当前用户主目录
实例 进入当前用户的主目录
命令 cd ~

pwd命令

命令功能 查看“当前工作目录”的完整路径,注意pwd后面无法跟路径,若使用该命令需要使用cd命令更改路径。
命令格式 pwd [选项]
常用选项

空 查看当前工作目录的完整路径

  • 实例 查看当前目录的完整目录
    命令 pwd

-P pwd -P 显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径

mkdir命令

命令功能 通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录。
命令格式 mkdir [选项] 目录…
常用选项

-m model,设定权限

  • 实例 创建权限为777的目录
    命令 mkdir –m 777 test3
    注:777指最大权限,即owner,group,others都具有读写执行的权限。

-p parents 可以是一个绝对路径名称,不存在的路径将会被创建

  • 实例 在/tmp 目录下创建一个test1/test11
    命令 mkdir /tmp/test1/test11
  • 实例 创建一个项目的目录结构
    命令 mkdir -p scf/{lib/,bin/,doc/{info,product},logs/{info,product},service/deploy/{info,product}}

rm命令

命令功能 删除一个目录中的一个或多个文件或目录
命令格式 rm [选项] 文件…
常用选项

-f 强制性删除,不询问

  • 实例 删除/tmp目录下的test1文件,不会询问而直接删除
    命令 rm -f /tmp/test1

-i 交互式删除

  • 实例 删除/tmp目录下的test1文件,它会在删除时询问
    命令 rm –i /tmp/test1

-r 递归删除目录及其子目录

  • 实例 删除/tmp/test1目录及其子目录
    命令 rm –r /tmp/test1

mv命令

命令功能 根据第二个参数的不同,移动或重命名
视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。在跨文件系统移动文件时,mv先拷贝,再将原有文件删除,而链至该文件的链接也将丢失
命令格式 mv [选项] 源文件或目录 目标文件或目录
常用选项

-b 若需覆盖文件,则覆盖前先行备份。

  • 实例 文件被覆盖前做简单备份,前面加参数-b
    命令 mv log1.txt -b log2.txt

-f force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖

  • 实例 将文件log2.txt改名为log3.txt,假如log3.txt存在,那么内容也会被log2.txt覆盖掉 命令 mv -f log2.txt log3.txt

-i 若目标文件 (destination) 已经存在时,就会询问是否覆盖!

  • 实例 将文件log1.txt改名为log2.txt,如果log2.txt已经存在,则询问是否覆盖 命令 mv -i log1.txt log2.txt

-u 若目标文件已经存在,且 源文件 比较新,才会更新(update)

  • 实例 将目标文件log1.txt更新为log2.txt 命令 mv -u log2.txt log1.txt

-t --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

  • 实例 将log1.txt log2.txt log3.txt 移动到test4目录中 命令 mv -t
    /opt/soft/test/test4/ log1.txt log2.txt log3.txt

cp命令

命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录。
命令格式 cp [选项]… [-T] 源 目的
常用选项

-a --archive 等于-dR --preserve=all

  • 实例 复制整个目录 命令 cp -a test3 test5
    注:目标目录存在与不存在运行结果不同

-i --interactive 覆盖前询问(使前面的 -n 选项失效)

  • 实例 使用/tmp/log3.txt覆盖/tmp/test1中的log3.txt,覆盖前会询问 命令 cp -i /tmp/log3.txt /tmp/test1

-n --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)

  • 实例 使用/tmp/log3.txt覆盖/tmp/test1中的log3.txt,文件并没有被覆盖 命令 cp -n /tmp/log3.txt /tmp/test1

touch命令

命令功能 touch命令可创建文件,参数可更改文档或目录的日期时间,包括存取时间和更改时间。
命令格式 touch [选项]… 文件…
常用选项

filename 创建文件

  • 实例 在当前目录下创建名为log1.txt的文件 命令 touch log1.txt

-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同

  • 实例 更新log.log 的时间和log2.log的时间相同 命令 touch -r log.log log2.log

cat命令

命令功能 显示、创建、合并
cat主要有三大功能:
1.一次显示整个文件:cat filename
2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件:cat file1 file2 > file
命令格式 cat [选项]… 文件…
常用选项
-b --number-nonblank 对非空输出行编号

-n --number 对输出的所有行编号

  • 实例 把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里 命令 cat -n log2012.log log2013.log

> 将多个文件内容合并到一个文件

  • 实例 将a1.log a2.log合并到log.log中
    命令 cat a1.log a2.log > log.log

tac 和cat类似,只不过是反向显示

  • 实例 将log.txt反向显示输出
    命令 tac log.txt

more命令

命令功能 分页查看文件和并支持跳转行
命令格式 more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file … ]
常用选项

+n 从笫n行开始显示

  • 实例 显示log.txt文件从第三行起的内容
    命令 more +3 log.txt

-n 定义屏幕大小为n行

  • 实例 设定每屏显示行数
    命令 more -5 log.txt

+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示

  • 实例 从文件中查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出
    命令 more +/day3 log.txt

-c 从顶部清屏,然后显示
-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
-s 把连续的多个空行显示为一行
常用操作命令
Enter 向下n行,需要定义。默认为1行
Ctrl+F 向下滚动一屏
空格键 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
V 调用vi编辑器
!命令 调用Shell,并执行命令
q 退出more
head命令
命令功能 用来显示档案的开头至标准输出中
默认打印文件的开头10行。
命令格式 head [参数]… [文件]…
常用选项
-q 隐藏文件名
-v 显示文件名

-c <字节> 显示字节数

  • 实例 显示文件的前20个字节
    命令 head -c 20 log.txt
  • 实例 显示文件的除了最后20个字节以外的内容
    命令 head -c -20 log.txt

-n <行数> 显示的行数

  • 实例 显示文件的前5行
    命令 head -n 5 log.txt
  • 实例 显示文件的除了最后5行以外的内容
    命令 head -n -5 log.txt

tail命令

命令功能 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
命令格式 tail [必要参数][选择参数] [文件]
常用选项

-f 循环读取

  • 实例 循环显示文件的内容
    命令 tail -f test.log

-q 不显示处理信息
-v 显示详细的处理信息

-c<数目> 显示的字节数

  • 实例 显示文件最后15个字节的内容
    命令 tail -c 15 log.txt

注意:常用来搭配ping 192.168.120.204 > test.log & //在后台ping远程主机。并输出文件到test.log;这种做法也使用于一个以上的档案监视。用Ctrl+c来终止。

-n<行数> 显示行数

  • 实例 显示文件最后5行的内容
    命令 tail -n 5 log.txt
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值