Linux Common Sense
Contents
linux 的发展史
- Unix
- Minix
- Linux
linux 的版本
- 内核版本
- 发行版本:redhat、ubuntu、centos
linux 下常用的目录结构
/:根目录~:用户的家目录.:当前目录/home:系统默认的用户home目录,存放普通用户相关文件/root:管理员的home目录,存放root用户相关文件/bin:存放linux常用命令的目录,如ls、vi、cat等/sbin:需要一定权限才可以使用该目录下的命令/etc:存放系统配置相关文件/tmp:存放用户或正在执行的程序临时存放文件的目录/usr:安装一个软件的默认目录,相当于windows下的program files/var:存放经常变化的文件,如网络连接的sock文件、日志等/boot:存放引导系统启动的相关文件/proc:这是虚拟目录,不占磁盘空间。是系统内存的映射,访问这个目录来获取系统相关信息/mnt:默认挂在光驱和软驱的目录/dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备/srv:service的缩写。该目录提供一些服务启动之后需要读取的数据/sys:linux 2.6内核之后一个变化,该目录下安装了一个2.6之后出现的新文件系统/del:类似于windows的设备管理器,把所有的硬件以文件的形式存储/media:用于临时挂载被的文件系统/opt:用于存放主机额外的软件,如oracle数据库就可以放在该目录下
终端命令格式
command [-opitons] [parameter] |
说明:
command:命令名[-option]:选项,可用来对命令进行控制和细化,也可省略[parameter]:传递给命令的参数,可以是0个、1个或多个[]:代表可选
查阅命令的帮助信息
command --help:显示command命令的帮助信息man command:查阅command命令的使用手册- 使用
man命令时的操作键: space,显示下一页enter,一次滚动手册页的一行b,回滚一页f,前滚一屏q,退出/word,搜索word字符串
- 使用
常见的linux命令
ssh username@ip -p port:链接远程服务器命令exit:退出登录ls:查看当前文件下的内容ll:ls -l的简写-a:a=all,显示指定文件下所有子目录与文件,包括隐藏文件-l:l=list,以列表形式显示详细信息-h:h=humanity,配合-l以人性化的方式展示文件大小
pwd:查看当前所在文件夹touch [文件名]:新建文件touch file1 file2 ...:创建多个文件
mkdir [目录名]:创建目录mkdir -p dir1/dir2/dir3:递归创建目录
rm [文件名]:删除指定的文件名rmdir/rm -r:删除文件夹-r:recursion,表示删除目录-f:force,强制-i:interactive,以交互的方式删除
mv:移动、重命名mv 1.txt 2.txt-f:强制移动,如有覆盖会给出提示-i:交互式操作,如覆盖目标之前提示-v:展示移动进度
cp:文件或者目录的复制cp 1.txt 2.txt-a:保持文件原有属性-f:覆盖已经存在的目标文件而不提示-i:交互式复制,在覆盖目标文件之前提示-r:目标文件必须为目录。会拷贝该目录下所有子目录和文件-v:展示拷贝进度
find:查找指定目录下的文件- 一般格式:
find 路径 -name 文件名 find . -name test.sh:查找当前目录下名为test.sh的文件find . name '*.sh':查找当前目录下所有以.sh后缀结尾的文件
- 一般格式:
grep:文本搜索- 一般格式:
grep [-options] '搜索内容' 文件名 - eg:
grep 'a' 1.txt -v:显示不包含匹配文本的所有行,即取反-n:显示匹配行及行号-i:忽略大小写- 搜索内容支持正则表达式
^a:表示以a开头。eg:grep -n '^a' a.txtb$:表示以b结尾。eg:grep -n 'b$' a.txt- [a-z]:范围中的一个。eg:
grep -n [a-z][a-z][a-z].txt b.txt
- 一般格式:
tar:归档管理- 一般格式:
tar [参数] 打包文件名 文件 - 打包 :
tar cvf 包名.tar 文件名 - 解包 :
tar xvf 包名.tar -C 路径 -c:生成档案文件,创建打包文件-v:列出归档解档的详细过程,显示进度-f:指定档案文件名称-t:列出档案中包含的文件-x:解开档案文件-z:归档压缩。调用gzip的压缩功能,先打包后压缩。默认后缀名为 file.tar.gz- 打包:
tar cvzf 压缩包包名 文件1 文件2 ... - 解包:
tar zxvf 包名 -C 路径
- 打包:
- 注意:
tar命令[参数]前面可以使用-,也可以省略
- 一般格式:
gzip:文件压缩解压,用gzip压缩tar打包后的文件扩展名一般用xxx.tar.gzgzip [选项] 被压缩文件-d:解压-r:压缩所有子目录
chmod:修改文件权限一个文件创建完成后,默认会有三个组:属主,属组,其他。每个组默认会有三个权限
属主owner,属组group,其他other
rwx, rwx, rwx- 字母法:
chmod u/g/o/a +/-/= rwx filenameu:user,表示文件的所有者g:group,用户组o:other,其他a:all,以上三者皆是+:增加权限-:撤销权限=:设定权限r:read,读取权限w:write,写入权限x:excute,执行权限
- 数字法:
chmod 751 filenamer:读取权限,数字代号为4w:写入权限,数字代号为2x:执行权限,数字代号为1-:不具有任何权限,数字代号为0
- eg:
chmod u=rwx,g=rx,o=r filename等同于chmod u=7,g=6,o=1 filename -R:递归所有目录加上相同权限,如chmod 777 test/ -R递归test目录下所有文件加777权限
- 字母法:
who:用于查看当前所有登录系统的用户信息-q或--count:只显示用户的登录账号和登录用户的数量-u或--heading:显示列标题
which:查看命令所在位置,例如which pwdpasswd:修改用户登录密码clear:清屏shutdown:关机reboot:重启more:分屏展示more text.txtq:退出space:下一页h:获取帮助
cat:查看并合并文件内容cat file1 file2 ...:合并多个文件查看
软连接 / 硬链接
- 命令格式:
ln [-s] 源文件 链接文件 ln -s a.txt a_sl:软连接,相当于win下面的快捷方式- 尽量使用绝对路径
- 当源文件大小改变时,链接文件不受影响
- 链接文件几乎不占用磁盘空间
- 当源文件删除,链接文件失效
- 软连接可以链接目录
ln b.txt b_sl:硬链接- 只能链接普通文件,不能链接目录
- 链接文件几乎与源文件占用空间一致
- 当源文件删除时候,链接文件不受影响
- 命令格式:
重定向
ls > test.txt:讲查询结果重定向输出到文件中,若文件不存在则创建。若存在则覆盖>:输出重定向为覆盖>>:输出重定向为追加至文件的尾部
cd [目录名]:切换文件夹cd .:进入当前路径cd ..:返回上一级目录cd /:返回根目录cd ~:返回home目录cd -:进入上次所在的目录
通配符
*:表示所有字符?:只代表任意一个字符[a-z]:表示a-z中任意一个字符\:反斜杠,转义字符
head & trail
head -n filename:查看文件的前n行trail -n filename:查看文件的后n行trail -f filename:动态查看文件的内容
查看进程和端口号
- 进程:
ps aux |grep ***a:allu:user
- 端口号:
netstat -tnulpa | grep ***t:tcpn:nou:userl:listenp:porta:all
scp 命令
- 跨系统复制文件
scp -r 源文件路径 用户名@远程ip地址:目标路径
top 命令
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器
使用格式
top [-] [d] [p] [q] [c] [C] [S] [s] [n]
参数说明
d指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。p通过指定监控进程ID来仅仅监控某个进程的状态。q该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。S指定累计模式s使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。i使top不显示任何闲置或者僵死进程。c显示整个命令行而不只是显示命令名
常用操作

