Linux 目录与文件的基本操作
1 目录与文件
1.1 文件
硬盘中的数据在操作系统中的体现为文件。
1.2 目录
目录的概念不是文件集合。目录和文件一样,目录也是文件。目录是找到文件的“踏板”。目录的本质是路径映射。
1.3 Linux目录结构
根目录
所有的文件都需要从根开始。Linux只要一个根。就像一颗树。Linux的根与内核直接关联。Linux的根用 / 表示。
一级子目录
/bin: 二进制,可执行的命令;
/sbin: 可执行命令,仅用于管理,通常管理员才有权限使用;
/boot: 引导,操作系统用于引导系统启动的文件,内核、grub;
/dev: 设备文件;硬件都已文件形式显示。体现了一切皆文件。
/etc: 配置文件;
/home: 普通用户的家目录,/home/USERNAME,例如jerry的家目录为:/home/jerry;
/root: 管理员的家目录;
/lib, /lib64: 库文件;
/media: 挂载点目录,通常用于挂载便携性设备;
/mnt:挂载点目录,挂载额外的文件系统;
/misc: 备份目录;
/opt: 可选目录,通常第三方软件偶尔安装于此路径下;
/proc: 伪文件系统;其实没有任何文件;内存中内核的映射;
/selinux: 安全加强的Linux;
/srv: 属于服务的中间数据的存储位置;
/sys: 伪文件系统,类似于/proc。通常用于访问硬件设备属性信息;
/tmp: 临时文件目录;
/usr: 存储只读文件;
/var: 经常会发生变化的文件;比如日志等;
2 Linux路径
/usr/share/doc
第一个/ 表示根目录。 之后的/ 表示路径分隔符。
2.1 基名
基名,路径的最右侧名称,/user/share/doc的基名 doc。
basename命令 取得路径基名。
dirname命令 除基名外的路径。
2.2 相对路径,绝对路径
绝对路径:从根开始的路径;
相对路径:从当前位置开始的路径;
.:一个点,当前目录;
..:两个点,当前目录的上级目录;
3 文件基本命令
3.1 ls命令
注:可以通过man命令查看ls命令的帮助。
ls: 列出指定目录下的文件。
常用参数:
- ls [-aAdfFhilnrRSt] 目录名称
- -l :以长格式显示文件的详细属性,包含档案的属性与权限等等数据;
- -a :显示所有文件,包括隐藏文件。
- -A :跟-a功能相同,但不显示.和..;
- -d :仅列出目录本身,而不是列出目录内的文件数据;
- -f :直接列出结果,而不进行排序 (ls 预设会以文件名排序!);
- -F :根据档案、目录等信息,给予附加数据结构,例如: *:代表可执行文件; /:代表目录;
- -n :列出 UID 与 GID 而非使用者与群组的名称;
- -R :连同子目录内容一起列出来,等于该目录下的所有文件都会显示出来;
- -S :按照文件容量大小排序,而不是用文件名称排序;
- -t :按照时间排序,而不是用文件名。
- -h: 文件大小会自动进行单位换算;
- -r:文件名逆序显示;
例:显示当前目录下的文件。# ls
例:显示根目录下所有文件
例:显示文件的详细属性信息。# ls -l
例:不一样的功能的文件有不一样的颜色被显示。这帮助我们快速确定文件功能。该功能不重要。
输入:ls /dev
输入:ls /bin
例:显示文件大小的单位
例:当前路径为/usr/share。配合相对路径和绝对路径使用ls命令。
ls -l /usr/share/doc/lsof-2.1/README
ls -l doc/lsof-2.1/README
ls -l ./doc/lsof-2.1/README 当前路径
ls -l ../bin/passwd 父目录
3.2 ll命令 显示单个文件的信息
ll命令 等价于 ls -l 。
3.3 pwd命令 显示当前工作目录
例:
3.4 cd命令 进入目录
例:
回家目录:cd ~
cd
cd ~USERNAME:切换至USERNAME的家目录;
cd -:在上个目录和当前目录之间切换;
例:进入/usr/share目录。 cd /usr/share
例:cd为内建命令;回到家目录的几个技巧。
例:在某个目录与家目录之间来回切换。cd -
3.5 mkdir命令 创建目录
mkdir:创建目录,默认情况下,指定目录的父目录必须存在。
mkdir 常用参数
-m, –mode:指定被创建目录的权限值。(不是 rwxrwxrwx 减 umask)
-p, --parents:创建目录的同时也会创建需要的父目录。
-v, --verbose:显示创建目录与父目录的过程。
--help:显示此帮助信息并退出。
--version:输出版本信息并退出。
例:mkdir /tmp/x1
例:x2文件不存在。则会报错。
mkdir /tmp/x2/hello
例: 使用p参数,mkdir -pv /tmp/x3/hello
实例3:创建权限为777的目录
mkdir -m 777 test3
3.6 rmdir命令 删除空目录
rmdir:仅能删除删除空目录;
rmdir -p m/n/o/p 删除当前目录下的m/n/o/p的一整条路径,要求路径下没有任何文件。
即需要先删空目录m/n/o/p,再删空目录m/n/o,再删m/n,再删空目录 m 。
3.7 cp命令 复制文件
cp 要复制的文件路径 ... 目标
常用参数
参数:
-a,--archive:此参数的效果和同时指定"-dpR"参数相同。
-r:递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理。
-R,--recursive:递归处理,将指定目录下的文件及子目录一并处理。-f,--force:强行复制文件或目录, 不论目的文件或目录是否已经存在。
-i,--interactive:覆盖文件之前先询问用户。
-u,--update:使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件。
-v,--verbose:显示执行过程。
-l,--link:对源文件建立硬链接,而非复制文件。
-b,--backup:删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录。
-p,--preserve:保留源文件或目录的属性,包括所有者、所属组、权限与时间。
-P,--parents:保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经丰在。
-s,--symbolic-link:对源文件建立符号链接,而非复制文件。
-S <备份字尾字符串>,--suffix=<备份字尾字符串>:用"-b"参数备份目的文件后,备份文件的字尾会被加上一个备份字符串。默认的备份字尾符串是符号"~"
-V <备份方式>,--version-control=<备份方式> 指定当备份文件时,备份文件名的命名方式,有以下3种:
1.numbered或t, 将使用备份编号,会在字尾加上~1~字符串,其数字编号依次递增。
2.simple或never 将使用简单备份,默认的备份字尾字符串是~, 也可通过-S来指定。
3.existing或nil将使用当前方式,程序会先检查是否存在着备份编号,若有则采用备份编号,若无则采用简单备份。
-x,--one-file-system:复制的文件或目录存放的文件系统,必须与cp指令执行时所处的文件系统相同,否则不复制,亦不处理位于其他分区的文件。
--help:显示在线帮助。
--sparse=<使用时机>:设置保存希疏文件的时机。
--version:显示版本。
cp命令对单个文件的复制:
目标不存在:则复制并重命名指定的名称(指定的名称的父目录必须存在);
目标存在: 如果目标是文件:则覆盖;如果目标是目录:将文件复制到指定的目录中;
cp命令对多个文件的复制:
如果要复制的文件是多个,则目标必须要存在且是目录;默认情况下不cp命令会复制目录。目录下已经有该文件,再复制进来相同文件名的文件。则询问是否要覆盖。
3.8 mv命令 移动文件
mv SRC DEST
规则与cp类似,但cp默认只能对文件操作,mv可以对文件目录均能操作。
-i:覆盖前提醒确认;
例:/etc目录下i开头的文件复制到/tmp ,并显示过程。
3.9 rm命令 删除文件
rm 只能删除文件,不能删除目录。
常用参数:
-i:提醒。
-f:强行删除;管理员不会有确认提示,直接删掉。
-r:递归删除目录及其内部的所有文件;
rm -rf 文件 强行删除文件。 警示:一定要谨慎使用。
rm -rf / 警示:删除根下所有文件。“自杀”非常危险。
警告:尽量不要这样操作。误操作经常发生,非常危险。
Linux 目录与文件的基本操作的更多相关文章
- linux 目录下文件批量植入和删除,按日期打包
linux目录下文件批量植入 [root@greymouster http2]# find /usr/local/http2/htdocs/ -type f|xargs sed -i " ...
- Linux目录和文件——查询目录和文件的命令
Linux目录和文件——查询目录和文件的命令 摘要:本文主要学习了在Linux系统中是如何查询目录和文件的. which命令 which命令是根据PATH环境变量设置的路径,去搜索执行文件. 基本语法 ...
- Linux目录和文件——管理目录和文件的命令
Linux目录和文件——管理目录和文件的命令 摘要:本文主要学习了Linux系统中关于目录和文件的操作. cd命令 cd命令用来切换工作目录,是Change Directory的缩写. 基本语法 cd ...
- Linux目录和文件——目录格式
Linux目录和文件——目录格式 摘要:本文主要了解了Linux系统的目录格式. 一切皆文件 Linux下“一切皆文件”是Unix/Linux的基本哲学之一. Linux中所有内容都是以文件的形式保存 ...
- Linux目录与文件的权限
零.Linux中的权限为什么重要? 权限直接关系数据安全! 一.用户基础概念: 所有者(owner):拥有这个文件的用户.一般拥有目录或文件的所有权限. 用户组(group):几个用户组成一个用户组, ...
- linux目录与文件权限的意义
现在我们已经知道了Linux系统内文件的三种身份(所有者,用户者,与其他人),知道每种身份都有三种属性(r,w,x),已经能够使用chown,chgrp,chmod去修改这些权限和属性,那么这些文件权 ...
- linux 目录与文件命令
目录与文件常用命令 1.cd命令 cd [相对路径或绝对路径或特殊符号] 功用:变换目录 ps: 不加参数时,默认切换到用户主目录,即环境变量HOME指定的目录,如root用户的HOME变量为/roo ...
- Linux 目录和文件操作
Linux常用命令--目录和文件操作 [目录]删除.复制.移动 : 1.删除文件夹用:rmdir 文件夹名 但是rmdir不能删除非空的文件夹,那如何删除非空文件夹呢: 2.通常情况下,删除文件用:r ...
- Linux 目录和文件的操作
整理常用的linux命令,关于目录和文件的操作,用于巩固记忆,以备不时之需. [root@localhost ~] root:当前用户 localhost:主机名 ~:当前所在位置 符号#:管理员 符 ...
随机推荐
- initWithCoder: 与initWithFrame:
之前一直用代码来编写画面,现在着手使用storyboard和xib来构筑画面,遇到initWithCoder方法, 故查了下,initWithCoder方法的调用,看了篇博客,链接如下: http:/ ...
- MIST
获取当前状态机 modelObj.states[modelObj.curStatus.stateId] "FH_Search" modelObj.states[modelObj.p ...
- Ubuntu版本介绍
转自Ubuntu版本介绍 经常有人问起Ubuntu的版本选择问题,论坛中虽有帖子提及,但不是很详细,不集中,我就尝试把Ubuntu上的这点东东翻译一下,供大家参考,水平有限,敬请包涵.指正. Ubu ...
- 你真的了解 MySQL 数据库的运行状况吗?
2015年第三方市场调查机构 Evans 数据公司最近公布的一系列客户调查数据显示,在过去两年里,MySQL 在所有开发者使用的数据库中获得了25%的市场份额,Evans 公司的本次调查显示,数据库的 ...
- /etc/shadow字段详解
1)/etc/shadow 概说: /etc/shadow文件是/etc/passwd 的影子文件,这个文件并不由/etc/passwd 而产生的,这两个文件是应该是对应互补的:shadow内容包括用 ...
- libstdc++.so.5: cannot open shared object file: No such file or directory
中文分词一般会选择ICTCLAS的模块,虽然不能说很完美,但也算是一个不错的选择.它提供了windows版本和linux版本,并支持C/C#/JNI接口.这本来是一个不错的事情,但版本一多,官方似乎就 ...
- C语言嵌入式系统编程修炼之一:背景篇
不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上,势必要求其编程语言具备较强的硬件直接操作能力.无疑,汇编语言具备这样的特质.但是,归因于汇编语言开发过程的复杂性,它并不是嵌入式系统开发 ...
- 彻底理解ThreadLocal(转)
ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路.使用这个工具类可以很简洁地 ...
- 创建range分区
drop table T_PM_ACCT_DTL_AF_TEST; create table T_PM_ACCT_DTL_AF_TEST ( DATA_DATE date, AC ...
- [LeetCode#163] Missing Ranges
Problem: Given a sorted integer array where the range of elements are [lower, upper] inclusive, retu ...