1、切换目录cd change directory
pwd 查看当前目录 print working directory (打印工作目录)
cd 切换目录 change directory
cd 切换到当前用户的家目录
cd - 去上一次所在的目录
cd ~ 去当前用户的家目录
cd . 去当前目录
cd .. 去上一级目录
2、创建空目录mkdir make directory
mkdir make directories 相当于windows创建文件夹
# 语法
mkdir [选项] xxx(目录名)
# 选项
-p 即-parents(长格式) 递归创建 (根据需要创建父目录)
-v 显示创建的过程
-m 创建目录并指定权限
# 例子:
比如我想创建一个xxx/xxx1/xxx2 目录直接创建不了,用 mkdir -p /xxx/xxx1/xxx2 即可用tree看下有没有:
root@sky,10.0.0.201:~/xxx # tree /xxx
/xxx
└── xxx1
└── xxx2
在/abc下创建1000个目录
mkdir -p /abc/yyy{1..1000}
rm -fr /abc*
3、tree
tree 以树形结构显示
-L 指定层数 例如 tree -L 1 /
-d 只显示目录
-a 显示所有文件
如:
[root@localhost ~]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
.......
4、创建空文件touch
虽然不能创建目录,但可以修改目录的时间戳
touch [] 文件名
touch 可以加个路径 就放进去了 不像win点半天
选项可有可无
可以同时创建多个文件 比win方便的多
touch{1..100}.txt 等价于 touch 1.txt 2.txt......
# 注意:
1.创建文件,必须要创建在一个存在的目录中
2.和创建目录不同的是,创建相同的文件不会报错,会覆盖原来的
3.在Linux当中一切皆文件,不能建和文件名重名的目录
[root@localhost ~]# mkdir 1
mkdir: cannot create directory ‘1’: File exists
5、ls 显示目录下内容及属性信息
ls 选项 文件或目录
显示默认以文件名进行排序(a到z)
-l 长格式
-a 显示所有,包括隐藏文件
-t 根据文件最后修改时间排序
-r 反过来,z到a
-F 加上文件类型指示符号(*、/、@等)
-d 查看目录本身
-i 显示inode
-h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)
[root@sky /]# ls -F
bin@ boot/ dev/ 。。。
6、cp复制 copy
# 语法
cp [选项] 源文件的路径 目标路径 新的文件名(想改名的话)
如 cp xxx 到/dev 下面 :把xxx复制到dev下面
选项:
-r 递归复制 将目录和目录下子目录和文件全部复制 直接复制无法复制目录
-p 保持文件所有属性 比如 如果不加-p 时间会修改 用户和用户组会变回去
-i 覆盖时提示
-a = -r+-p
[root@web01 ~]# which cp
alias cp='cp -i'
/usr/bin/cp
使用命令绝对路径可屏蔽别名。
开头加反斜线\也可屏蔽别名。
7、mv 移动或重命名文件
mv [选项] 源文件 目标文件 新的文件名(想改名的话)
mv -t 目录 源文件
选项:
-f:强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖;
-i:交互询问是否覆盖(默认选项);
-n:如果目标文件已经存在,则不会覆盖移动,而且不询问用户;
-v:显示文件或目录的移动过程;
-u:若目标文件已经存在,但两者相比,源文件更新,则会对目标文件进行升级;
移动之后,源文件会被删除,类似剪切。如果使用不当,很可能给系统带来灾难性的后果。
mv也可以移动目录。和 rm、cp 不同的是,mv 移动目录不需要加入 "-r" 选项
8、rm 删除 remove
rm [OPTION]... FILE...(默认会有提示确认)
-f, --force 强制删除,不提示
-r, -R, --recursive 递归删除目录和其中的文件
# 例如
-fr /test* *是匹配所有,就把里面的内容删了。
# 企业中注意
1.尽量不用rm,用mv移到/tmp
2.用rm命令尽量先切目录再删
3.不要用rm -fr删文件,以防误删目录!! 最多rm -f删文件
4.谨慎用通配符
比如 -fr /* 删完连命令都用不了了哈哈哈哈
用也是切进去再删 rm -f ./*
9、cat concatenate files and print on the standard output concatenate的缩写
连接文件并输出文件内容到标准输出
# cat 连接文件并输出文件内容到标准输出
命令的基本格式如下:
[root@localhost ~]# cat [选项] 文件名
# cat主要有三大功能:
1.查看文件的内容 (注意,cat 命令适合查看不太大的文件。)
比如:
[root@localhost ~]# cat 1txt
锄禾日当午
汗滴禾下土
...
2.将多个文件合并为一个文件
[root@localhost ~]# cat 文件1 文件2 > 文件3 合并后输出到文件3中。
3.创建并编辑新文件,
[root@localhost ~]# cat >或>> 3.txt >覆盖原内容 >>追加
hahahaha
按ctrl+d结束输入
[root@localhost ~]# cat 3.txt
hahahaha
4.用cat追加数据,按EOF结尾(EOF只是结束标识,可以换)命令格式:
[root@localhost ~]# cat >> 1.txt <<EOF 不用<<也可以的话也可以按ctrl+d结束输入
>balabalaaaa(此处输入你要追加的内容)
等同于:
[root@localhost ~]# cat <<EOF >> 1.txt
如果>>换成>则会覆盖原来的内容
[root@localhost ~]# cat > 1.txt <<EOF
# 选项
-n 对输出的所有行进行编号
再如:
[root@localhost ~]# echo www.baidu.com >1txt
[root@localhost ~]# cat 1txt
www.baidu.com
[root@localhost ~]# echo www.andrew.com > 2.txt
[root@localhost ~]# cat 2.txt
www.andrew.com
[root@localhost ~]# cat 1txt 2.txt >> 1+2.txt
[root@localhost ~]# cat 1+2.txt
www.baidu.com
www.andrew.com
PS:关于重定向符号>,>>,<,<<后面详细讲解。
10、echo命令
# 格式:echo [-n] [字符串]
-n 不要在最后自动换行
-e 若字符串中出现一下字符,则需特殊处理如:
\n 换行且光标移至行首
\a 发出警告声
# 作用:
1.输什么显示什么
2.将 单行文本 追加到文本中
例子
[root@sky ~]# echo -e '\ni\nam\nsky'
i
am
sky
[root@sky ~]# echo -e \ni\nam\nsky
ninamnsky
cat与echo的区别
1. 想看一个文件的内容是什么,可以用cat,比如 cat/etc/reslov.conf,就显示出文件reslov.conf里具体的内容。
2. 而echo 没有这样的功能,他会把echo后面的内容作为字符串显示出来,
比如 echo hello,就显示hello;
比如 echo /etc/reslov.conf ,会显示/etc/reslov.conf
[root@localhost ~]# cat 123 >> 1txt cat追加,格式错误,cat后面是文件。应为:cat >> 1txt <<EOF
cat: 123: No such file or directory
[root@localhost ~]# echo 床 >> 1txt echo也可以给文档追加内容
[root@localhost ~]# cat 1txt
www.baidu.com
i am andrew my English namefbd
床前明月光
床
© 版权声明
本站文章由不念博客原创,未经允许严禁转载!
THE END