Linux常用命令
你可能会看到很多下面这样的
➜ Desktop # 这说明目前在Desktop目录下 也就是桌面
➜ a # 这说明目前在a目录下
练习时 ·不要!·不要!·不要!· 将箭头后面的Desktop或者是a等等 当成命令一起输入!!!!
cd:切换目录
切换到桌面下的a文件 ➜ Desktop cd a ➜ a
ls:查看目录文件
查看a目录下的文件列表: ➜ a ls a.txt b.txt c.txt
touch:创建文件
➜ a touch new_file.txt # 创建一个new_file.txt文件 ➜ a ls # ls 查看 多了一个new_file.txt文件 a.txt b.txt c.txt new_file.txt
mkdir:创建目录 ---->mkdir 目录名
➜ a mkdir cc # 创建一个名为cc的目录 ➜ a ls a.txt b.txt c.txt new_file.txt cc
mkdir -p:创建多级目录 ---->mkdir 目录/目录/.....
➜ a mkdir -p a/b/c ➜ a ls a a.txt b.txt c.txt new_file.txt
rm:删除文件 ----> rm 文件名
➜ a rm a.txt # 删除a.txt文件 ➜ a ls a b.txt c.txt new_file.txt
rm -r:删除多级目录 ----> rm -r 目录名
➜ a rm -r a ➜ a ls b.txt c.txt new_file.txt
cat:查看文件全部内容 ----> cat 文件名
➜ a cat b.txt # 可以看到b.txt文件的所有内容 1111111111111111 222222222222222 333333333333333 444444444444444 555555555555555 66666666666666 77777777777777 8888888888888 9999999999999 ➜ a
more:分页查看文件内容 与cat命令用法相同
文件内容比如有500行的时候,用cat就不是很方便查看了,可以选择more命令
find:查找文件 ----> find 要查找的目录路径 -name 文件名
➜ a find ~/Desktop -name c.txt # 在桌面目录下查找c.txt文件 /Users/sun/Desktop/a/c.txt
grep:查找文件内容 ----> grep 选项(可以不写) 内容(字符串) 指定文件名
a)不指定选项 ➜ a grep '5' b.txt # 在b.txt文件中查找 '5' 555555555555555 b)选项 -n 显示内容所在的行号 ➜ a grep -n '5' b.txt 5:555555555555555 # 在地5行 ·可自行尝试· c)选项 -i 忽略大小写 比如查找内容为'a'那么大写的'A'也会在查找范围内 d)选项 -v 查找相反的内容 比如查找'1'那么除'1'以外的都在查找范围内
重定向 > >>
>:输出重定向 ➜ a cat b.txt > c.txt # cat查看b.txt的内容 用重定向 将内容导入到 c.txt中 ➜ a cat c.txt 1111111111111111 222222222222222 333333333333333 444444444444444 555555555555555 66666666666666 77777777777777 8888888888888 9999999999999 >>:追加重定向 两者有什么区别呢? 1.输入命令 cat b.txt >> c.txt 2.然后cat查看一下c.txt文件的内容 3.再输入命令 cat b.txt > c.txt 4.再cat查看一下c.txt文件的内容 动手尝试一下... 第2步操作完会发现 c.txt内容又被追加了一遍b.txt文件的内容 也就是说>>会在c.txt原有内容的末尾追加 第4步完成 c.txt中只有一遍b.txt的内容 也就是说>会清空文件内容 重新添加 还可以用ls来练习。。。。
cp:拷贝----> cp 源文件 目的目录
➜ a mkdir 新目录 #创建一个名叫新目录的文件夹 ➜ a ls b.txt c.txt new_file.txt 新目录 ➜ a cp b.txt ./新目录 # 拷贝b.txt文件 到新目录文件夹中 ➜ a ls 新目录 b.txt 在拷贝的过程中,可以修改拷贝后的文件名。例如: cp b.txt ./新目录/b[附件].txt
mv:移动----> mv 源文件 目的目录
mv的用法与cp一样,动手尝试一下
tar:归档管理 ----> tar [参数] 打包文件名 文件
参数: -c 创建打包文件 -v 显示进度 -f 指定档案文件名称,f后面一定是.tar文件 所以必须放在选项最后 -x 解开打包文件 归档例子: # 当前所在位置是a目录下 ➜ a tar -cvf demo.tar * # 将a目录下所有文件打包'*'星号是通配符,表示所有的 a b.txt a c.txt a new_file.txt a 新目录 ➜ a ls # 生成打包文件 demo.tar b.txt c.txt demo.tar new_file.txt 新目录 解档命令格式: tar -xvf 归档文件名
压缩、解压:gzip
:tar 与 gzip命令结合使用 实现压缩解压 压缩格式:tar -zcvf 压缩后的文件名 需要压缩的文件 只是在归档的命令上 选项位置加了一个z 解压格式:tar - zxcf 解压的文件名 在解档的命令上 选项位置加一个z
chmod:修改文件权限 ----> chmod 761 文件名
修改权限有两种方法,这里介绍的是数字法-----个人认为数字发更加方便也比较容易理解 查看权限 ls -l 第一列的数据就是权限 ➜ a ls -l total 32 -rw-r--r-- 1 guanfei staff 140 4 18 20:25 b.txt -rw-r--r-- 1 guanfei staff 140 4 18 20:41 c.txt -rw-r--r-- 1 guanfei staff 5120 4 18 21:22 demo.tar -rw-r--r-- 1 guanfei staff 0 4 18 19:59 new_file.txt drwxr-xr-x 2 guanfei staff 64 4 18 21:22 新目录 -[rw-][r--][r--] 从第一个'-'横杠之后开始算,可以分成三组 第一组user:表示该文件的所有者 第二组group:表示用户组 第三组other:其他意外的人 "rwx"分别代表什么? r : 读取权限,数字代号为“4” w : 写入权限,数字代号为“2” x : 执行权限,数字代号为“1” - : 布局任何权限,数字代号为“0” 上面我们说了 每一个文件的权限显示 都分为三组, 每一组的最高总和是7 比如:-[rw-][r--][r--] 4+2 4 4 user:6 group:4 other:4 用数字法如何表示他的权限,就是644 如何修改权限? 例子: ➜ a chmod 777 b.txt # 将b.txt文件权限修改 ➜ a ls -l total 32 -rwxrwxrwx 1 guanfei staff 140 4 18 20:25 b.txt -rw-r--r-- 1 guanfei staff 140 4 18 20:41 c.txt -rw-r--r-- 1 guanfei staff 5120 4 18 21:22 demo.tar -rw-r--r-- 1 guanfei staff 0 4 18 19:59 new_file.txt drwxr-xr-x 2 guanfei staff 64 4 18 21:22 新目录
pwd:查看当前所在目录路径
which:查看一个文件的路径 ----> which 文件名
ln创建链接文件:
1.软链接: 几乎不占磁盘空间,源文件被删除后会失效 可以链接目录 格式:ln -s 源文件 链接文件 如果软链接与源文件不再同一个目录下,源文件需要用绝对路径 2.硬链接: 与源文件完全一样的文件,只是名字不同,源文件删除不受影响 不可以链接目录 ln 源文件 链接文件
19.
sudo(用户)
可以通过sudo借用超级用户的权限执行命令 root(超级用户) python(管理员) 借用超级用户权限修改管理员密码 sudo -s(切换到root) whoami(查看当前用户) passwd python(修改管理员的密码)
SSH:远程登录
连接一个远程用户:ssh 用户名@ip地址 回车后需要输入远程用户的密码 远程下载/上传 下载 scp -r 目标用户名@目标IP地址:目标文件的绝对路径 下载到客服端的路径 上传 scp -r 本地文件名 目标用户名@目标IP地址:上传到目标的绝对路径