ip的主要作用是用来标识一个节点的网络地址
子网掩码是用来区分网络位和主机位
命令的执行依赖于解释器(默认解释器/bin/bashA)
用户---->解释器(shell)-->内核-->硬件
使用cat /etc/shells来查看当前解释器
绿色:代表可以执行的程序
完整的命令:命令 选项 参数 #中间用空格隔开
linux的命令不难 难的是记住一个命令的选项和参数。
linux系统下 ctrl+shift+加号 使终端字体变大
ctrl+减号 使终端字体变小
以上快捷键都是临时性的 如需永久改变需要进入设置里设置字体
终端内最末行的#代表当前用户为超级管理员
例:[root@localhost ~]#
ls #可以查看特定指定文件或者模糊搜索
例
*代表所有模糊搜索 如s* 它会搜索出所有开头带s的文件或者目录 如:s2233 ssddddfg soowwoow s305050
也可以用*s来搜索 如12312s 555ss 5599s wwowos 或者s*s 如s30300s s3s s599s9s
?代表单个字符搜索 如s? 它就会搜索两个字符的s+?的单词 只要匹配s开头 后面?是什么都可以如s0 s1 s2 ss sd sf
还有[]和{}
ls -l #查看目录或者文件的属性 开头-代表文件 d开头代表目录 l代表这个是一个链接
lscpu #查看cpu信息
lsblk #列出块设备 硬盘设备
less #适合查看文件内容较多的命令 可以使文件内容滚动 类似于VIM编辑器命令
hostname #查看当前主机的名称并且可以修改名称(名称后加上.主机名只会显示.点前面的名称.此命令为临时性重启后失效)
例:hostname ss.dd.ff #在终端只会显示ss这个名称
hostnamectl set-hostname #永久设置主机名称
例:hostnamectl set-hostname ss.dd.ff
ip address show #查看当前网卡所有IP地址也可以简化输入
例: ip a s
which #用来寻找程序所在的目录
例:which ifconfig
cat /etc/redhat-release #此命令用来查看系统版本 存放版本的文件在/etc/redhat-release里
cat /proc/meminfo #查看当前使用内存和剩余内存
#查看当前解释器和位置 一般默认的解释器为bash
按住ctrl+c可以中断结束正在运行的命令
alt+. 可以复制上个命令的参数
例:
可见cat -n 后面复制了ls -l /etc/shells这个参数
/etc/shells为参数
ctrl+w例:sss ddd ccc 按住ctrl+w会删除ccc 再按一次会删除ddd 最后再到sss
mount /dev/cdrom 目标参数 #挂载光驱到目标目录也就是参数
umount #卸载命令
alias定义别名
格式:alias 别名='命令和参数' #定义别名 可以简化命令 此命令为临时性设置 重启开机后失效
unalias 别名 #删除别名
/家目录/.bashrc #设置永久别名配置文件 重新打开终端生效 不是重启系统哦
mkdir创建目录
mkdir -p 参数 #连同父目录一同创建
mkdir -m 777 新创目录 #给予这个新创的目录所有权限
例:mkdir -p /sss/ddd/fff 会创建三个目录 即:sss ddd fff
cp -r 命令进行覆盖的时候 提示是否覆盖同名文件 是因为有alias别名里 系统默认cp -i
可以使用unalias cp删除别名 来达成强制覆盖
不过这种办法是删除别名 也可以使用\cp -r xx xx 加上反斜杠来不使用别名来使本次操作别名失效
cp -r 复制过去的时候可以既拷贝又能重新命名
例:cp -r /home /opt/myhome #拷贝了home目录并且重新命名了myhome
cp还有一个规则就是可以支持多参数 最后的参数作为目标
例:cp -r /boot /etc/passwd /etc/shells /home /mnt #效果就是boot passwd shells home 拷贝到mnt下
cp 可以用.来复制目录或者文件到当前所在位置
例:cp -r /home . #复制home文件到你当前所在位置
grep查看文本内容
-v #取反匹配
-i #忽略大小写
^ #从开头开始匹配
$ #从尾部匹配
^& #过滤空行
例: grep ^$ /etc/default/useradd
会显示一个空白的行
主要是用来配合选项-v来操作
如grep -v ^$ /etc/default/useradd
如果在vim里编辑的时候突然崩溃(停电或者断电) 可能会出现一个隐藏交换文件
删除这个隐藏的交换文件就能恢复正常
交换文件是.xx.swp这样的格式显示
tar命令:
gzip压缩速度最快 .gz 压缩效率比较可以 对应选项-z
bz2 压缩速度较慢 .bz2 压缩效率比高 对应选项-j
.xz 对应选项-J
相对来说.gz最优选 .bz2不一定比.gz压缩效率高到哪
tar压缩(创建归档)命令格式:
tar -选项 /路径/压缩包的名字 被归档的压缩的数据 (第一个参数永远都是压缩包 后面第二第三参数以此类推都是要压缩的目录或者文件)
选项 :
-f #指定tar包名字,此选项必须在所有选项的最后 例:-zxf -zcf
-c #制作压缩包 建议使用对应压缩包取对应的后缀名(不取后缀名也可以正常使用)方便识别 如-zcf 这个选项下 后缀名应该是:压缩包名称.tar.gz
如果想创建压缩文件并且不想让压缩文件显示路径 可以用空格来区分出来
在同一个路径目录下 可以压缩多个文件或者目录 需要选项-C来指定路径
可以达成只压缩数据不压缩路径 空格可以多个
例:
tar -zcf /root/xxx.tar.gz -C /etc passwd group shells hosts -C /root anaconda-ks.cfg
#多文件不同目录压缩到/root/xxx.tar.gz 并且只有数据
释放压缩包(解包)
tar 选项 /路径/压缩包的名字
-C 释放的位置
-f:指定tar包的名字
-x:指定动作为解包
-C:指定释放的位置 一般解压需要使用 例:
tar -zxf xx.tar.gz -C /xxxx
-t :查看tar包内容
| 管道符号 可以把多个命令链接到一起 需要经常使用 不支持双参数命令
> 追加符号 可以一般可以用echo把内容写到文件内 >>覆盖 一般不建议使用>>
wc统计文件命令
格式:行数 单词数 多大
参数:-l #只统计行数
find精确查找命令:
find可以配合管道符号 | 配合命令wc -l来统计数据
选项:
-type #查找文件类型 一般多个单词需要两个-- 但是find命令下 一个减号就行了. (f d l)
其中f为文件 d代表目录 l代表快捷方式
例:
find /boot -type f
-name #严格匹配寻找名称 少一个字符都不会匹配 (也可以写成-iname #忽略大小写)
例:find /etc -name passwd #在/etc目录下查找passwd文件
可以用*来匹配 所有
例:*tab 或者tab* 或*tab* #分别匹配tab结尾的文件 一般要搜索的内容用' '或者"" 框起来 '*tab' 'tab*' '*tab*'
可以使用-name 和-type 来组合搜索你想要的文件,目录 和特定的名称
上图分别用组合命令分别两次找了名叫haha的目录和文件
也可以使用-o选项 -o就是两者满足一个就给结果
-o 使用中不经常使用 -o位置需要在参数后
-size 寻找文件大小 +代表大于 -代表小于 单位为k M G #k必须为小写 M必须为大写 G必须为大写
例:find /boot -size +10M
也可以组合使用来表达大于10M 小于50M
例:find /boot -size +10M -size -50M
-user #寻找数据的属主
如上图在根目录下查找名叫dc的用户 下面报错因为proc文件为内核数据 调用完就不会存在 而且不占内存 所以报错可以无视 只有在根目录下搜索才会发生 下面没有报错出来的结果为正常
-mtime #文件最后一次修改时间
可以用-mtime 来寻找你最后修改时间的文件
+ 代表之前 默认数值为天 +10就代表10天之前没有修改过的文件
一般linux来说要清理一下三个月之前的文件 也就是90天之前的数据 防止系统臃肿
用+90来寻找
例:find /etc -mtime +2 #/etc下找2天之前修改的文件
寻找2天之前修改的文件并且用head命令只显示3行
find的高级使用
:因为双参数的命令不能使用管道符号
所以find命令下可以使用选项-exec来达成额外操作 可以使find找到的文件删除 复制 移动之类的操作在一条命令内搞定
选项:-exec #额外操作
{} #代表前面查到数据的结果
\; #额外操作结束 在命令的结尾处
例:find /boot -size +10M -exec cp {} /mnt \; #找到大于10MB的文件并且复制到/mnt目录下
例2:find /boot -size +10M -exec ls -lh {} \; #找到大于10MB的文件并且长格式查看并且显示大小
{}只能传递一个一个的数值 也就是要执行类似于tar这种命令打包只能打包一个
如果查到5个文件 并且用-exec tar命令打包就只能打包一个进去 因为{}只能一个一个传递.
vim命令的快捷应用
命令模式(按两下esc可以从其他模式退回到命令模式):
在命令模式下 按gg跳到最后一行 GG跳到第一行 输入数字+G 可以跳到指定行数
home跳到行首 end跳到行末
按u为撤回上一此操作 按住u可以快速撤销 到你最后一次操作为止
ctrl+r取消撤销你上一次的撤销操作
dd为删除一行 数字+dd为删除多少行 如10dd 5dd (在命令模式下键盘按)
按一下d 再按shit+数字键盘4($) 能删除你光标后的文字内容(一行)
按一下d 再按shit+数字键盘6(^) 能删除你当前光标所在位置之前的内容(一行)
按下/ 再输入内容可以查看你想要的文本内容 多个匹配可以按n从第一个往下找
大写N可以从下往上找.
查找后会高亮显示 再查找一个不存在的内容就可以取消上一次的查找高亮显示
ZZ 在命令模式下保存并且退出 效果等于末行模式 :wq
末行模式:
按住键盘SHIFT+: 进入末行模式
在末行模式下输入r 目录/文件 可以读入另外文件的内容 可以多次读入
例:r /opt/1.txt
可以使用相对路径和绝对路径
末行模式使用s来替换
命令:s/被替换的内容/替换的内容/g (加上g替换一行)
例::s/root/xx/g (替换一行的root为xx 以光标所在位置替换 只替换一行)
:1,10s/root/xx/g (替换第1-10行所有的'root')
:%s/root/xx/g (替换全文所有的root为xx)
在末行模式下输入:set nu # 显示行号
:set nonu #关闭行号
:set ai #启用自动缩进 自动对齐上一行内容
:set noai #关闭自动缩进
家目录下有vim配置文件 文件名:.vimrc
vim /root/.vimrc #管理员家目录下设置vim配置文件
set nu
:wq
#配置完成 一行只能一个命令 这配置文件可以让vim编辑器的配置永久生效
vimdiff 文件对比 可以对比2个文件和编辑2个文件
例:vimdiff 文件1 文件2
效果如上
命令模式下ctrl+w同时按下,左右移动光标
末行模式下:wqa保存全部文件并退出
也可以对比2个以上的文件 不过不推荐使用.
man帮助手册
一种集中的手册页文档机制
命令格式:man 命令
按方向键上 方向键下 翻页 也可以使用pgup pgdn翻页
按q退出
按/键向后查找关键词(n,N切换)
man 5 命令 #可以查看这个命令的配置文件的信息(种类有1-9 但是使用5就够了)
history历史命令
history #查看历史命令列表
选项:
history -c #清空历史命令
-c后可以再输入history -w #永远清空历史命令
!n #执行命令历史中的第n条命令
!str #执行最近一次以str开头的历史命令
vim /etc/profile #修改history的配置文件
HISTSIZE=1000 #默认记录1000条命令 可以在这里修改
ln创建软链接(快捷方式)
ln -s 原始文件或目录 软链接文件 #不指定就是当前位置 指定就需要输入绝对路径 生成一个软链接 原数据如果被删除 这个软链接也就不能使用了
去掉-s这个选项 ln就是硬链接
ln 原始文件或目录 硬链接文件 #硬链接可以在原数据崩溃或者被删除还能继续使用
一般建议使用软链接.
date #显示当前时间
date -s '2012-12-1 22:15:18’ #修改时间为2012年12月1日 晚上10点15分18秒 -s选项为修改
du 统计文件的占用空间
-s #只统计每个参数所占用的总空间大小
-h #提供易读容量单位(K M等)
一般是 -sh组合使用
bc LINUX自带计算器
里面计算内容都是取整
可以配合echo使用
echo 1+5 | bc
单独使用bc进入单独终端运算