Linux只有一个文件系统树,不同的硬件设备可以挂载在不同目录下。 
文件或目录有两种表示方式: 
 - 绝对路径:从根目录”/”开始 
 - 相对路径:从工作目录开始,使用”..”指向父目录,”.”指向当前目录。在大多数情况下”./”可以省略。 
隐藏文件:以”.”开头的文件

命令 作用
pwd 显示当前工作目录
cd 切换工作目录
ls 列出目录的内容
file 打印文件类型的说明
mkdir 新建目录
cp 复制文件或目录
mv 移动文件或目录
rm 删除文件或目录
ln 创建链接
locate 通过查找路径名数据库搜寻文件(updatedb命令用来更新数据库,一般一天更新一次)
find 查找文件
xargs 从标准输入中建立、执行命令
touch 更改文件日期时间
stat 显示文件或文件系统的详细信息

cd

cd:切换到主目录 
cd -:切换到先前工作目录 
cd ~user:切换到user的主目录

ls

参数可用文件或目录,可接多个参数。

短选项 长选项 含义
-a –all 列出所有文件,包含隐藏文件和当前目录、父目录(默认不列出)
-d –directory 列出目录本身而不是目录的内容,常和-l一起使用
-F –classify 在所列项后加上类型指示符,如用”/”指示目录
-h –human-readable 在用长格式”-l”列出时,使用可读格式显示大小。默认使用字节数。
-l   使用长格式显示结果
-r –reverse 以相反的顺序显示结果。默认使用字母升序显示。
-S   以文件大小顺序显示结果。从大到小。文件夹大小是所有目录项的大小,一般是4K。
-t   以修改时间顺序显示结果。从新到旧。

列出隐藏文件和隐藏目录: 
ls -d .[!.]* 以点开头,第二个字符不是点。(书中的模式.[!.]?*会忽略”.a”的情况) 
ls -d .* 会列出隐藏文件和目录以及本目录和父附录的所有内容

mkdir

mkdir directory… 
可同时新建多个目录

cp

默认情况下不能拷贝目录 
拷贝文件:cp file1 file2 
拷贝目录:cp -a(-r) dir1 dir2 
  - 拷贝dir1及dir1中的所有内容。 
  - 若dir2存在,拷贝到dir2下,即dir2/dir1。 
  - 若dir2不存在,新建dir2并复制dir1的内容到dir2下。 
拷贝到指定目录下:cp item… directory 
  - 拷贝文件到指定目录下,此时directory必须存在。 
  - 若要拷贝目录,需指定-a或-r选项

选项 长选项 含义
-a –archive 复制文件或目录的所有内容及属性,包含所有者信息和权限。默认情况下,不能拷贝目录,拷贝后使用拷贝者设定的的默认信息。
-i –interactive 如果目标文件已存在,给出提示信息请求确认。默认情况下,直接覆盖文件。
-r –recursive 复制目录
-u –update 拷贝目录时,只复制目标目录中不存在或对应更新的文件。
-v –verbose 显示提示信息

mv

移动文件或者目录,参数和cp类似,但移动目录时不需要-a(-r)选项。 
移动文件或目录:mv item1 item2 
  若移动文件,直接覆盖item2。 
  若移动目录,item2存在时,item1移动到item2下,即item2/item1。 
    若item2不存在,新建item2并移动item1的所有内容到item2,然后删除item1。 
移动到指定目录下:mv item… directory 
  移动文件或目录到指定目录,此时directory必须存在

选项 长选项 含义
-i –interactive 如果目标文件或目录已存在,给出提示信息请求确认。默认情况下,直接覆盖文件。
-u –update 移动目录时,只移动目标目录中不存在或对应更新的文件。
-v –verbose 显示提示信息

rm

删除文件或者目录,和cp类似,删除目录时需要-r选项。当文件或目录不存在时,会给出提示信息:”No such file or directory”。 
删除文件:rm file… 
删除文件和目录:rm -r file… dir…

选项 长选项 含义
-i –interactive 如果文件或目录存在,给出提示信息请求确认。默认情况下,直接删除文件。
-r –recursive 删除目录及子目录。
-f –force 文件不存在时不给出提示信息,也忽略-i选项的确认信息。
-v –verbose 显示提示信息

ln

创建硬链接:ln file link 
  不能引用不同磁盘分区的文件,不能引用目录 
  建立不同的目录项,指向同一个数据inode块(ls -i查看inode编号) 
  ls查看时,与目标文件没有区别 
  删除时,只是删除硬链接,文件不变。当文件的所有硬链接都删除时,才会删除文件

创建软链接(符号链接):ln -s item link 
  创建一个特殊文件,包含一个指向文件或目录的指针 
  符号链接大小是指针字符串的大小 
  ls查看时,是l类型,有”->”号指向目标文件或目录。目标不存在时(坏链接),一般会反色显示。 
  item可以是绝对路径,也可以是相对路径 
  大部分操作时以链接目标为对象,但rm命令是删除符号链接 
  符号文件的权限都是”伪权限”,真实权限由符号链接指向的文件确定

find

find命令包含test选项、action选项和options选项,实现高级文件搜索。 
操作符:-and[-a](默认)、-or[-o]、-not[-!]、括号()。-and和-or按照短路规则执行,括号需要用反斜杠()

test选项: 
  文件类型(-type):f-普通文件、d-目录、l-符号链接、b-块设备文件、c-字符设备文件 
  文件名(-name):-name “*.jpg”,一般用引号防止shell扩展 
  大小(-size):+1M-超过1M,-1M-小于1M,1M-等于1M。支持的单位:b-512字节块(默认)、c-字节、w-两个字节、k-KB(1024字节),M-MB,G-GB

action选项: 
  -delete:删除 
  -ls 
  -print:打印匹配项(默认操作),-print0可以识别文件名中的空格,配合xargs –null用来处理空格文件名。 
  -quit 
  -exec[-ok] command {} ; :自定义操作,{}表示当前路径,;做分隔符表示命令结束。{}和;需要用单引号防止shell识别。

option选项: 
  -depth 
  -maxdepth levels 
  -mindepth levels 
  -mount

Shell命令——文件目录的更多相关文章

  1. hadoop入门:hadoop使用shell命令总结

    第一部分:Hadoop Bin后面根据项目的实际需要Hadoop Bin  包括:Hadoop  hadoop的Shellhadoop-config.sh 它的作用是对一些变量进行赋值     HAD ...

  2. Hadoop学习记录(2)|HDFS shell命令|体系结构

    HDFS的shell 调用文件系统(FS)shell命令使用hadoop fs的形式 所有的FS shell命令使用URI路径作为参数. URI格式是scheme://authority/path.H ...

  3. Android 的独特shell命令

    Android本来就是一个linux操作系统,所以大部分都是linux的命令,如mkdir,ls,netstat,mount,ps 等,这里就不具体介绍了, 主要介绍几个Android特有的. get ...

  4. 了解基本的bash shell命令

    本节内容主要介绍如何使用bash shell提供的基本命令处理Linux文件和目录: 1.启动shell shell是一个可以交互访问的Linux系统程序,它的运行与普通程序相同,系统启动的shell ...

  5. Shell记录-Shell命令(find)

    Linux中的find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花 ...

  6. 常用shell命令实战

    #!/bin/sh ################### #### 环境变量 ### ################### #主程序目录 #APP_HOME=/apps/svr/apache-to ...

  7. 晦涩难懂的shell命令

    初学shell脚本,过程中发现许多不易于理解的脚本语言,网上各种查找学习之后,择优精简一番,做出以下总结,方便以后遗忘了回顾,也为像我一样的初学者提供方便——推荐给初学者的一本书:<Linux ...

  8. Linux常见的Shell命令

    1.具体的shell命令用法可以通过help或man命令进入手册来查询其具体的用法.2.终端本质上对应着linux上的/dev/tty设备,linux的多用户登录就是通过不同的/dev/tty设备完成 ...

  9. Shell命令整理

    Shell命令 一.认识Shell 在Linux系统中,Shell充当着用户与Linux内核的桥梁,俗称壳保护着Linux内核,同时也负责完成用户与内核之间的交互. 当用户需要与内核交互时,将命令传递 ...

随机推荐

  1. python+requests实现接口测试 - get与post请求使用(转载)

    转自:http://www.cnblogs.com/nizhihong/p/6567928.html 简介:Requests 是用Python语言编写,基于 urllib,采用 Apache2 Lic ...

  2. python获得命令行参数的方法

    #encoding=utf8 import sys reload(sys) sys.setdefaultencoding("utf8") print "参数名: &quo ...

  3. 1-安装MQTT服务器(Windows),并连接测试

    对于不知道MQTT的肯定会问MQTT是干什么的....... 现在我有一个项目需求, 看到这个项目第一想法肯定需要一个服务器,所有的wifi设备和手机都去连接这个服务器,然后服务器进行信息的中转,类似 ...

  4. struts2_文件上传的功能

    使用Struts内置的fileUpload拦截器(已默认配置)即可,设计的电商网站,提供用户头像上传的功能 1. 2. 3. 4. 5. 5.未使用拦截器 6.未使用filename 7. 8. 9.

  5. C语言中猴子吃桃问题

    猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 10 天早上想再吃时 ...

  6. 20155337 《网络对抗》 Exp2 后门原理与实践

    20155337 <网络对抗> Exp2 后门原理与实践 一.基础问题回答 - 例举你能想到的一个后门进入到你系统中的可能方式? 在Unix里,login程序通常用来对telnet来的用户 ...

  7. python 网络爬虫介绍

    一.网络爬虫相关概念 网络爬虫介绍 我们都知道,当前我们所处的时代是大数据的时代,在大数据时代,要进行数据分析,首先要有数据源,而学习爬虫,可以让我们获取更多的数据源,并且这些数据源可以按我们的目的进 ...

  8. SpringBoot配置Aop笔记【例子】

    众所周知,spring最核心的两个功能是aop和ioc,即面向切面,控制反转.这里我们探讨一下如何使用spring aop. 1.何为aop aop全称Aspect Oriented Programm ...

  9. 【Android UI设计与开发】第03期:引导界面(三)仿微信引导界面以及动画效果

    基于前两篇比较简单的实例做铺垫之后,这一篇我们来实现一个稍微复杂一点的引导界面的效果,当然也只是稍微复杂了一点,对于会的人来说当然还是so easy!正所谓会者不难,难者不会,大概说的就是这个意思了吧 ...

  10. Microsoft Dynamics CRM 常用JS语法(已转成vs2017语法提示)

    背景 最近接触到Microsoft Dynamics CRM的开发.前端js是必不可少的部分,奈何没有一个语法提示,点不出来后续的语句. 在vscode上面搜索插件的时候发现,有一个大神写的插件htt ...