- 文件目录
/ 代表根目录 整个系统全部在根目录中
/boot 存放启动配置文件 建议,单独做成一个分区
/dev 设备文件目录 比如:光盘、硬盘
/etc 存放所有的配置文件
/home 普通用户的家目录文件
/root 管理所在的家目录
/run 存放动态文件(不持久运行的应用程序数据),关机就清空文件
/tmp 存放临时文件,一个星期以后可能就没有了
/var 存放动态数据文件 比如 :/var/log/messages 日志文件
/usr 存放已安装的软件程序和库文件
/usr/bin 存放普通用户的命令
/usr/sbin 存放管理员的命令
/usr/local 存放自定义软件
which mkdir /usr/bin/mkdir Which usesradd /usr/sbin/mkdir
/proc 存放内核参数以及硬件参数 比如:cpu 、内存相关信息 cat /proc/cupinfo 查看CPU信息 cat /proc/meminfo 查看CPU信息
2.pwd 查看所在目录 cd / 切换到根目录下
如何查看所在的目录路径 pwd 查看目录 whatis pwd 3.cd切换目录 cd 目录 相对路径:路径是以当前路径为起点 . 表示当前目录下 .. 表示上一级目录 ~ 表示返回自己的家目录 相当于输入cd 绝对路径:永远以根作为路径起点 比如: cd /home/student 以根为起点,这是一个绝对路径 cd ../home/student 相对路径
*** cd ./student 进入当前目录下的/student目录 “./” 可以省略,直接输入student进入
-
ls 列出当前目录下的所有内容 -l 以长格式显示 -a 显示所有文件包括隐藏文件和. 以及.. 包括. /. ./.bash 隐藏文件 -A 显示所有文件包括隐藏文件 -d 显示所有目录文件,一般和-l 结合使用 ls -ld 显示当前目录的长文件格式 -h 以K/M/G为单位显示信息 一般和-l 结合使用 -R 递归显示
-
touch 创建空文件(可以刷新文件的时间戳) touch file1 创建file1文件 echo 123 echo hello world > file1 cat file1 查看file1中的内容 ls -l file1 可以看见时间 touch file1 时间戳会修改,文件中的内容不会修改 touch file1 file2 file3 创建多个文件 touch file{5..9 }
-
mkdir 创建一个空目录 -p 创建多级目录 如果之前没有目录也可以创建 mkdir dir1 dir2 dir3 mkdir dir{5..9}
mkdir -p a/b/c 创建c目录,如果没有b,就先创建b *** ls -R a ls递归查看 -
mv 移动文件、目录/重命名(路径相同的移动) (移动文件时,默认保留原文件的权限) mv file1 dir1/ mv ../file2 ../dir2 mv file5 file5.old mv file9 dir9 /file99 mv a dir1/
-
cp 复制 ( cp也可以重命名,相同目标下做复制,可以重命名 ) -i 覆盖复制时有提示信息 -f 强制覆盖 -r 递归复制 -p 保留原属性
前提: dir1 中存在文件和多级目录 cp dir1 dir2/ 无法复制 cp -r dir1 dir2/ 递归复制
cp 命令在系统中默认添加-i选项,所以会自动提醒是否覆盖原文件 alias 查看系统当中的命令别名
cp -rfp dir1 dir2/
-
rm/rmdir 删除目录、文件 rm 一定要慎用 rmdir 删除空目录 rm 删除文件或目录 -i 覆盖复制时有提示信息 -f 强制覆盖 -r 递归复制
rm dir1 rm file4 rm -f file6 不需要询问是否删除 rm -f -r dir1 强制递归删除文件和目录 rm -r dir2 提示是否删除
rm -rf / root/dir2
- 文件通配: 路径名扩展 mkdir dira dir1,dir2,dir3,dir4,dir5,file7,file8,dira 需要将dir1,dir2,dir3 这些数字的文件夹显示出来,这时需要借助特殊字符来实现 特殊字符分类: (1)元字符 (后面介绍) 重定向 > >> 管道符 |
(2)通配符 * 匹配0个或多个字符 ? 匹配任意一个字符 [ list] 匹配list中的任意一个字符 [ !list] 匹配除list以外的的任意一个字符 {string1,string2,string3, ...} 匹配字符串 —————————————————————————————————— [[:digit:]] [ [] ]外面表示匹配一个字符,里面表示匹配一个数字 [[:lower:]] 表示匹配小写字母 [[:upper:]] 表示匹配大写字母 [[:alum:]] 表示匹配数字或下划线 [[:space:]] 表示匹配空格 [[:punct:]] 表示”.” 例子:
ls -ld dir* 匹配所有dir的文件夹
ls -ld dir? 匹配dir后面一个字符的文件夹
ls -ld dir[0-9] 0-9中的一个字符匹配出来
mkdir dir{b..f} 创建b-f的文件夹
ls -ld dir[a-z] a-z中的字符匹配出来
ls -ld dir[!a-z] 除了a-z中的字符匹配出来
touch file{aa,bb,cc,dd,ee,ff} ll file {aa,bb,cc,ff} ———————————————————————————————————————
ls -ld dir[[:digit:]] 显示数字 等同于 ls -ld dir[0-9]
touch file{A..E} touch file{a..e}
ls -ld dir[[:lower:]] 等同于 ls -ld dir[A-Z] ls -ld dir[[:upper:]] 等同于 ls -ld dir[a-z]
(3)转义符: ‘’ 硬转义 “” 软转义 \ 转义 例子: touch xx yy touch “xx yy” touch’ yy zz’ a=1 定义变量 echo a 输出a echo $a 输出变量a echo “$a” 1 “” 如果出现了特殊符号,当做特殊字符输出 echo ‘$a’ $a ‘’ 如果出现了特殊符号,当做普通字符输出 echo “$a” $a \的作用是将$a当做普通字符输出 echo ‘$a’ $a ‘’当做普通字符输出 touch aa\ bb 将空格当做普通字符来处理