ls命令
-a all全部的,包含隐藏文件
-l long长的,表示详细信息
-d directory目录,查看目录的信息
文件类型
drwxr-xr-x 2 root root 4096 10月5 08:24 bin
第一个表示文件类型
d directory 目录
-binary 二进制文件
l link 软链接文件
rwx r-x r-x
r read 读
w write 写
x execute 执行
三组代表三种权限
所有者u(user,onwer,谁创建谁是所有者) 所属组g(group) 其他人o(others)
2代表硬链接数
第一个root代表所有者
第二个root代表所属组
4096代表文件大小,不是准确数值,数据块,存储数据的最小单位,默认512字节
10月5 08:24 创建时间或最后修改时间
bin 文件名或目录类名
cd命令
cd change directory 切换目录
cd / 切换到根目录
cd .. 切换到上级目录
pwd命令
pwd print working directory 打印当前所在的目录
touch命令
touch 创建空文件
touch newFile
mkdir命令
mkdir make directories 创建目录
mkdir newDir
cp命令
cp copy复制文件
cp 原文件地址 目标文件地址
cp /etc/servers /test 将etc目录下的servers文件复制到test目录下;
cp -R /etc /test 使用-R是复制目录的,将etc目录复制到test目录下
mv命令
mv move移动,剪切文件或重命名
mv file1 file3 将文件file1改名为file3
mv file1 dir2 将文件file1剪切到目录dir2下
rm命令
rm remove删除文件
rmdir 删除空目录(使用较少)
rm file1 删除文件1
rm -r dir1 删除目录1,记得加-r
cat命令
cat concatenate and display files 显示文件内容
cat fileName 不能分页,显示文件最后一页内容
more命令
more 分页显示文件
more /etc/services
空格或f 显示下一页
Enter 显示下一行
q或Q 退出
head命令
head 显示文件前几行
head -20 /etc/services 显示services文件前20行 不加默认显示前十行
tail命令
tail 显示文件后几行
tail -30 /etc/services
ln命令
ln link产生链接文件
ln -s 产生软链接,不加-s产生硬链接
ln -s /etc/issue /issue.soft
创建issue文件的软链接issue.soft,软链接相当于windows系统的快捷方式
ln /etc/issue /issue.hard
创建issue的硬链接issue.hard,硬链接相当于拷贝,除了时间不同
chmod命令
chmod change the permissions mode of a file改变文件或者目录的权限
chmod u+r 给所有者增加读权限
g-w 给所属组减去写权限
o=x 不管其他人是什么权限,置为执行权限
u 代表所有者 g所属组 o其他人
例如 chmod u+r a 给a文件的所属者添加读权限
但是,通常使用数字表示
r-4 w-2 x-1
rwxr-xr– 代表的就是754
rwx权限解析
对于文件来说
r 查看文件内容,命令 cat,more,head,tail
w 修改文件内容,命令echo,vi
x 执行文件,包括命令或者脚本
对于目录来说
r 列出目录中的内容,命令ls
w 在目录中创建和删除文件,想要删除文件,即使对这个文件有写权限也不行,只能修改文件,必须要对目录有w权限,才可以删除目录下的文件,命令mkdir,touch,rm
x 可以进入目录,命令cd.所以可以看到对于一个目录文件一般都由rwx权限,不然死活都进不去的
chown命令
chown change file ownership 改变文件或目录的所有者
chown nobody file1 改变file1的所有者nobody 注意所有者不能随便写,必须是系统中存在的用户,例如nobody就是系统自带的用户,类似于windows的guest
引入知识点
- 切换用户,命令:su - 用户名 例如su - root 切换到root用户
- 添加用户,命令:useradd 用户名 例如useradd hair 添加hair用户之后设置密码让他登陆,命令:passwd 密码
chgrp命令
chgrp change file group owership 改变文件或目录的所属组
chgrp adm file1 改变file1的所属组为adm adm是系统自带的缺省组
umask命令
umask 显示或折这文件的缺省权限
直接umask显示的结果:0022
解析0022
首个0是特殊权限位
后面的022为权限掩码值
777-022=755 表示所有者有读写执行权限,所属组和其他人有读执行权限。
可以使用这样来修改创建文件的默认权限,例如umask -027 则新创建的文件或者目录所有者是读写执行,用户组是读,执行,其他人什么权限也没有
还可以直接使用umask -S命令,结果u=rwx,g=rx,o=rx
which命令
which 命令名称 显示命令所在目录
whereis 命令名称 显示命令所在目录,二者的区别是which可以显示出命令的别名,whereis可以显示出命令所在的帮助文档。使用这个命令可以查看目录所在位置,进而知道命令是超级用户(sbin)或者普通用户(bin)可以执行的
find命令
find 搜索路径 搜索关键字 查找文件或目录
find /etc -name init 在etc目录下面查找名称为init的文件,还可以使用通配符,init*表示以init开头的文件,init表示包含init的文件
find / -size +204800 在根目录下查找大于100MB的文件,是以block块为单位算的,一个block块是512字节,即0.5kb,100MB=102400kb=204800个0.5kb.
find / -user hair 在根目录下查找所有者为hair的文件
find /etc -ctime -1 在etc目录下查找24小时之内被修改过属性的文件和目录
-ctime -atime -mtime 以天为单位
-cmin -amin -mmin 以分钟为单位
c change修改过文件的属性,比如所有者,所属组等属性信息
a access访问过文件
m modify修改过文件的内容
-之内,+超过
find /etc -mmin -120 在etc目录下查找两小时之内被修改过的文件
find /etc -size +163840 -a -size -204800 在etc目录下查找大于80MB小于100MB的文件
-a and表示逻辑与
-o or表示逻辑或
find /etc -name inittab -exec ls -l {} \;在etc目录下查找名称为inittab的文件并列出它的详细信息
exec执行,固定格式find … -exec 命令 {} \;
解析:{}代表前面find到的文件的集合。\代表执行命令本身。 ;代表语句结束。-exec可以换成-ok,只是ok执行之前会询问
locate命令
locate 寻找文件或目录
locate file 列出所有跟file相关的文件
grep命令
grep 在文件中搜索字符串匹配的行并输出
grep ftp /etc/services 在services文件中搜索包含ftp的行
man命令
man manual帮助,手册,linux的帮助命令
man 命令或配置文件 获取帮助信息
man ls 查看ls命令的帮助信息
man services 查看配置文件services的帮助信息
info命令
info 类似于man帮助命令,只在linux可用,在unix中不可用。
info ls 获取ls命令的帮助命令
gzip命令
gzip GNU zip的缩写,用于压缩文件,且只能压缩文件,不能压缩目录,压缩完成之后原文件消失,压缩后的文件以.gz结尾
gzip newfile1 压缩newfile1文件
gunzip命令
gunzip GUN unzip解压.gz的压缩文件
gunzip newfile1.gz
tar命令
tar 将目录打包成文件后再压缩
tar 选项 打包后的名字 待打包的目录
选项有以下几种
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
压缩后的文件格式.tar.gz
tar -zcvf dir1.tar.gz dir1 将dir1文件打包并压缩
tar解压命令
-x 解包.tar文件
-v 显示详细信息
-f 指定解压文件
-z 解压
tar -zxvf dir1.tar.gz 解压dir1目录
zip命令
zip 可以压缩文件也可以压缩目录,不同的是压缩目录要加上-r,同样要把压缩后的文件名写在前面,待压缩的文件写在后面,zip比gzip的好处是压缩后原文件并不会消失,同时对于大的文件会显示压缩比。.zip格式的压缩文件是唯一的windows和linux通用的压缩文件
zip services.zip /etc/services 压缩文件,将etc目录下的services文件压缩成services.zip
zip -r test.zip /test 压缩目录,将test目录压缩成test.zip,记得加-r
unzip命令
unzip 解压缩命令
unzip 文件名
unzip test.zip 解压test.zip文件
bzip2命令
bzip2 与一般的压缩命令不同,这个可以大大提高压缩比,将文件压缩的更小,压缩后文件后缀.bz2
bzip2 -k file1 压缩文件file1,压缩后为文件名为file1.bz2,去掉-k压缩完之后将不保留原文件
bunzip2命令
bunzip2 解压文件
bunzip2 -k file1.bz2 解压file1.bz2文件。解压之后保留原文件,如果不想要原文件,去掉-k
注意:.gz和.bz2的命令不能压缩目录,只能压缩文件
网络通信指令
write命令
write 用户名 向另外一个用户发信息,Ctrl+D结束
write root 向root发送信息
wall命令
wall 信息 向所有用户发送广播信息
wall happy new year 系统中的所有用户均会收到happy new year的消息
ping命令
ping ip地址,测试与给定的ip是否连通,如果未连通,测试ping 本机地址,如果依然不能ping通,ping 127.0.0.1
ping -s 60000 127.0.0.1 向本机发送60000个数据包(少可能看不出来效果,现在明显看到时间有延迟)
ping -c 4 127.0.0.1 发送4次之后自动停止,不加-c 4的话会一直ping,知道按ctrl+c
ifconfig命令
ifconfig 查看网络设置信息
eth0 实际的物理网卡
lo 会话地址网卡
ifconfig eth0 192.168.1.1 可以临时改变本机的物理网卡,但是下次启动时会显然显示原来的网卡,这就涉及到linux系统的一般规律,只要改变了配置文件信息,下次才依然生效,命令行修改的只在临时有效。
Shell应用
bash 全称bashell
按Tab可以补全文件名
输clear可以清屏,按ctrl+l组合键也可以
ctrl+u可以把已输入还未执行的内容删除
输入history可以查看你执行过的命令记录
!99 可以执行你敲过的那个命令,比如这个就是执行你的第99个命令
按方向的上下键可以找到上次下次执行的命令