01-Linux_command

jefxff 153,638 2020-01-01
Linux_command
  • 在 bin 目录下面的文件就是需要学习的 Linux 命令
command:
ls 查看当前路径下的文件以及文件夹的名字
  • ls 绝对路径 (ls /bin 表示:查看根目录下的 bin 文件夹下的东西)
  • ls 目录名 (ls Documents 表示:查看当前路径下的 Documents 文件夹下的所有东西)
  • ls -a 显示包含隐藏的所有文件(隐藏文件是以 . 开头)
  • ls -l 以列表的方式显示文件
  • ls -h 以 K/M/G 的方式显示文件的大小
  • ls *: *表示任意多个字符,也可以没有
    • ?表示一个字符,一定有一个,不能没有
    • *.txt 显示所有以 .txt 结尾的文件
    • . 显示所有带后缀的文件
    • *.t[xn]t []表示只能从中括号中的任意一个字符
    • [abcdef] 也可以写成 [a-f] :表示 从a到f之间的任意一个字符
cd 切换目录
  • cd 绝对路径
    • cd /home/ubuntu/Documents
  • cd 相对路径
    • cd Documents
  • cd 文件夹名字
  • cd .. 跳转到当前路径的上一层
    • . 表示:当前的路径
    • .. 表示:当前路径的上一层
    • cd ../.. 表示:当前路径的上一层的上一层
  • cd - 跳转到上一次所在的路径(类似于电视机遥控器中的回看)
  • cd ~ 切换到当前用户的主目录(/home/用户目录)
pwd
  • 显示当前操作的路径(显示的是绝对路径(/home/ubuntu/Desktop))
clear 清屏
Tab键
  • 在终端中使用Tab键可以自动补全
  • Ctrl+A 键跳转到行首,Ctrl+E键跳转到行尾
touch 创建一个文件
  • linux 中没有后缀的说法,所有的文件名自定义
  • touch hello.xyz 表示创建后缀为zyx的hello文件
重定向 ">"(ls > test.txt 表示:把本来显示在终端的信息写入到 test.txt 文件中)
  • 一个 > 是文件不存在就创建,如果存在的话就清空后创建
  • 两个 >> 是文件不存在就创建,如果存在的话就在文件的末尾添加
more
  • 如果 more 后面的文件超过了一屏显示,他会根据当前屏幕的大小显示一屏的内容,然后按下空格键显示下一屏,直到所有内容显示完
管道 "|" 可以连接两个命令
  • 比如 ls -ahl | more 把本应该显示在屏幕的内容先放在管道内,然后让后面的 more 来执行
mkdir 创建文件夹
  • mkdir a 在当前路径下创建 a 文件夹
  • mkdir a/b/c/d -p 递归创建文件夹
rmdir
  • 删除非空的目录(文件夹),如果文件夹非空的话会提示删除失败
rm 删除文件或目录
  • rm -i 交互式方式确认要删除的文件
  • rm -f 强制删除,忽略不存在的文件,无需提示
  • rm -r 递归地删除目录下的内容,删除文件夹时必须加此参数
tree
  • 以目录树的方式显示文件夹结构
ln 建立链接文件
  • linux 下的链接文件相当于 windows 下的快捷方式
  • 软链接:软链接不占用磁盘空间,源文件删除则软链接失效
  • 硬链接:硬链接只能链接普通文件,不能链接目录
  • 使用格式:
    • ln 源文件 链接文件( 硬链接)
    • ln -s 源文件 链接文件( 软链接)
cat 查看、合并文件的内容
  • cat 01.py 02.py 表示:查看 01.py 和 02.py 文件的内容
  • cat 01.py 02.py > python.py 表示:合并 01.py 和 02.py 文件的内容到 python.py文件中
grep 从指定的文件中搜索需要的内容
  • grep -n 表示:显示行号
  • grep -i 表示:不区分大小写
  • grep -v 表示:取反,即不包含需要的内容的行
  • grep -n '^a' 表示:显示以 a 开头的内容
  • grep -n 'a$' 表示:显示以 a 结尾的内容
history
  • 查看所有使用过的历史命令
--help 命令
  • 查看命令的帮助信息
find
  • 在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件
  • find ./ -name test.txt 查找当前目录下所有名为 test.txt 的文件
  • find ./ -name '*.sh' 查找当前目录下所有后缀为 .sh 的文件
  • find ./ -name "[A-Z]*" 查找当前目录下所有以大写字母开头的文件
  • find /tmp -size 2M 查找在 /tmp 目录下等于 2M 的文件
  • find /tmp -size +2M 查找在 /tmp 目录下大于 2M 的文件
  • find /tmp -size -2M 查找在 /tmp 目录下小于 2M 的文件
  • find ./ -size +4k -size -5M 查找当前目录下大于 4K,小于 5M 的文件
  • find ./ -perm 0777 查找当前目录下权限为 777 的文件或目录
cp
  • 将给出的文件或者目录复制到另一个文件或者目录中
  • cp -a 该选项在复制目录的时候使用,它保留链接,文件属性,并递归地复制目录,简而言之,它保留文件的原有属性
  • cp -f 已经存在的目标文件而不提示
  • cp -i 交互式复制,在覆盖目标文件之前将给出提示要求用户去确认
  • cp -r 若给出的源文件是目录文件,则 cp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
  • cp -v 显示拷贝进度
  • cp b a -r 表示:将 b 文件夹复制到 a 文件夹中
  • cp b/* a -r 表示: 将 b 文件夹中的所有内容复制到 a 文件夹中
mv
  • 移动文件或者目录,也可以给文件或者目录重命名(移动文件和目标文件在同一路径)
  • mv -f 禁止交互式操作,如有覆盖也不会给出提示
  • mv -i 确认交互方式操作,如果 mv 操作将导致对已经存在的目标文件覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
  • mv -v 显示移动进度
  • mv a b 表示:将 a 文件或者文件夹整体移动(剪切)到 b 文件夹下
  • mv b/a . 表示:将 b 文件夹下的 a 文件移动到当前位置
tar
  • 归档管理(打包、解包),此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开恢复数据
  • tar 使用格式: tar [参数] 打包文件名 文件
  • 常用参数:
	tar -c	生成档案文件,创建打包文件
	tar -v	列出归档解档的详细过程,显示进度
	tar -f	指定档案的文件名称,f 后面一定是 .tar 文件,所以必须放在参数选项的最后
	tar -t 	列出档案中包含的文件
	tar -x	解开档案文件
  • 目录打包:
   tar -cvf d.tar d 	表示:将 d 文件打包成 d.tar
  • 解包:
   tar -xvf d.tar 	表示:将 d.tar 解包
gzip
  • 文件压缩解压,tar 与 gzip 命令结合使用实现文件的压缩和解压。tar 只负责打包文件,但不压缩,用 gzip 压缩 tar 打包后的文件,其扩展名一般用 XXXX.tar.gz
  • gzip 使用格式: gzip [选项] 被压缩文件
  • 常用参数
	gzip -d	解压
	gzip -r	压缩所有之目录
  • 打包压缩
	tar -zcvf d.tar.gz d 	表示:将 d 文件打包压缩成 d.tar.gz
  • 解包解压缩
	tar -zxvf d.tar.gz 	表示:将 d.tar.gz 解包解压缩
  • 解压缩到指定路径
	tar -zxvf d.tar.gz -C ~/Documents 	表示:将 d.tar.gz 解压到家目录下的 Documents 目录下(解压后的文件名为压缩前的文件名)
bzip2
  • 文件压缩解压 用 bzip2 压缩 tar 打包后的文件,其扩展名一般用 XXXX.tar.bz2
  • 打包压缩
    tar -jcvf d.tar.bz2 d	表示:将 d 文件打包压缩成 d.tar.bz2
  • 解包解压缩
    tar -jxvf d.tar.bz2 	表示:将 d.tar.bz2 解包解压缩
  • 解压缩到指定路径
    tar -jxvf d.tar.bz2 -C ~/Documents 	表示:将 d.tar.bz2 解压到家目录下的 /Documents 目录下
zip \ unzip 文件压缩解压
  • 压缩文件
	zip [-r] 目标文件(没有扩展名) 源文件
  • 解压文件
	unzip -d 解压后目录文件 压缩文件 
which 查看命令位置
  • 例如:which ls \ which tar
  • 一般命令存放在 /bin 文件目录下,一般都是可执行程序

# linux