系统命令
目录文件相关命令
mkdir:创建目录,参数-p 当需要创建父目录时创建父目录 可以建立多个目录
-v 每次创建一个目录返回一个信息
echo:用于字符串输出-n 表示取消输出每一行结尾的换行符号
echo -n "oldboy";echo "oldboy"
oldboyoldboy
echo -e 处理特殊字符若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
ls:查看目录,参数 -l 查看目录的详细信息
-d 只查看目录本身
-a 显示隐藏文件和目录
-t 按修改时间排序 ls -lt 时间正序 ls -lrt 时间倒序
-i 显示索引节点inode节点号
-lh 显示文件和目录大小
-F 会在每个目录的末尾添加“/”字符显示
tar:创建查看解压压缩包 压缩存放位置 压缩那个目标
创建压缩包 # tar zcvf /tmp/etc.tar.gz /etc/
或zcf cf打包在一起不压缩
z--通过gzip压缩工具 压缩
c--表示创建压缩包
v--显示执行过程
f--打上压缩包名字
查看压缩包内容#tar ztf /tmp/etc.tar.gz
或tf
t--显示压缩内容
解压 进入压缩包目录进行解压缩#tar zxvf etc.tar.gz
或zxf 或xf
-h 这个参数的作用就是,如果你打包的目录中,有一个软链接文件,如果不使用-h,
那么打包的只是链接,而且合格链接将会无效
如果使用-h,那么将会沿着这个软链接去查找源文件,将源文件打包到目录中
tar打包压缩的时候会把绝对路径变为相对路径删除 "/"不这样的话解压就会覆盖源文件
cd: 切换目录 进入目录
cd .. 进入上一级目录或../../../
pwd:显示当前目录的绝对路径 我在那里
mv: 移动文件或目录到指定位置,移动目录时结尾不要加/
cp: 复制文件及目录 默认无法复制目录 用作备份#cp /data/oldboy.txt /data/oldboy.txt.bak
-p 复制的时候保持文件属性不变
-r 递归复制 复制目录及目录下的内容
-a -pdr复制所有
-i 提示作用
rm: 删除文件 会提示是否删除。使用绝对路劲 例如/bin/rm zhou.txt 或者命令前加反斜
线 \rm
-f 强制删除文件
-r 递归删除 提示
-rf直接删除
tree:以树形图形式显示目录结构,
参数-a 显示目录的所有内容
-d 只显示目录
-L 显示目录层级,可以接数字指定
-f 显示每个文件的完整路径
-i 不显示横线
-F 显示结果加上相应结束符
cat: 查看文件内容,参数-n 显示行号,特别用法:cat 文件1 文件2 > 文件3 将文件
内容上下合并并重定向到新文件中
-A 显示行尾字符
touch:创建文件和更新时间戳,参数-a 只更新访问时间 -m 只更新修改时间
vim: 文本编辑器。
find: 查找文件和目录的命令 #find /root/ -type f -name "oldboy.txt"
-type 查找什么类型的 -type f 查找文件file
-type d 查找目录directory
-name "oldboy" 目标的名字
#find /oldboy/ -type f -name "*.txt"|xargs sed 's#oldboy#oldgirl#g' -i
找出.txt的文件管道给sed替换
|xargs ls -l 找到的文件显示信息扩展 cp、rm等
-mtime +7 查找几天前的文件
-size +1M 查找多大的文件
-exec { } \; 执行前面命令的结果#find /app/logs/ -type f -name "*.log" -exec cp {} /tmp/b/ \;
#find / -type f -name "gawk" 查找命令绝对路径
# find -maxdepth 1 -type d 显示当前目录下的一级目录
tr "," " " <lianxi.txt|awk '{print $3,$6}' tr 指定,和空格为分割符
head: 默认显示文件前10行的内容 #head test.txt
-2n或-2 显示前几行
tail: 默认显示文件后10行内容 #tail test.txt
-2 显示后几行
#head -30 /oldboy/ett.txt | tail -11 取出文件的20-30行
wc -l:查看文件内容有多少行
file : 查看文件类型
ln -s:创建软链接 #ln -s oldboy.txt oldboy.txt-soft
ln: 默认创建硬链接 #ln oldboy.txt oldboy.txt-hard
linux 修改、访问、改变时间
mtime modified time 文件的修改时间 文件内容的变化时间
ctime change time 文件属性的改变时间 硬链接数量 文件大小 文件权限
atime access time 文件的访问时间 cat
stat:显示文件和文件系统的详细信息 #stat oldboy.txt
stat -c%a /oldboy/ 显示文件权限
网络相关命令
eth0 网卡配置文件的路径
/etc /sysconfig /network-scripts /ifcfg-eth0
/配置/系统配置/网络-脚本/ ifconfig-eth0
ifdown eth0 :关闭网卡
ifup eth0 :开启网卡 ifdown eth && ifup eth0 关闭网卡成功则启动网卡
service network restart 重启所有网卡
关闭防火墙
临时关闭:/etc/init.d/iptables stop
永久关闭:chkconfig iptables off 关闭开机自动启动#chkconfig |grep ipt 查看状态
用户与用户组相关命令
useradd:创建新用户 #useradd oldboy
userdel -rf name:删除名称为name的用户
id:查看用户归属 #id oldboy
uid=500(oldboy) gid=500(oldboy) groups=500(oldboy)
用户的id号码 用户组的id 500+普通用户
1-499傀儡用户
0 root用户
passwd:给用户设置密码 #passwd oldboy
whoami:我是那个用户
su -: 切换用户 #su - oldboy
uname: 查看系统名字 #uname -r 系统内核版本 -m 多少位系统
关闭SElinux
getenforce:查看selinux状态 enforcing正在运行 permissive临时关闭 disabled彻底关闭
setenforce :临时开启关闭1|0 永久关闭#vim /etc/selinux/config 修改SELINUX=disabled重启生效
查看修改系统状态命令
df -h:查看磁盘block使用情况
df -i: 查看inode使用情况
du -sh:查看目录大小
cat /etc/passwd 存放用户的信息
date:显示日期时间 date +%F 显示 年-月-日
date +%w 显示周几 date +%F_%显示年与日_周几
date +%T显示 时-分-秒
date -d "1day" 显示一天后
date -d "-1day" 显示一天前 date +%F_%w -d "-7day"按格式显示七天前
date -s "20180302 17:09:33"修改日期
date -s "1hour" 修改时间增加一天
pool.ntp.org
ntp1.aliyun.com时间服务器 #ntpdate pool.ntp.org自动修改时间
修改环境变量
1.临时 #export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
2.永久 #vim /etc/profile 添加变量 或上面的配置追加进去 生效#source /etc/profile
w:查看用户在线的命令
03:57:24 up 4:07, 4 users, load average: 0.00, 0.00, 0.00
当前时间 系统登陆多久 几个用户 系统1s 5s 15s 平均负载
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 03:46 0.00s 0.03s 0.00s w
登陆账号 终端号 远程主机名地址 何时登陆 空闲时间 当前进程所占用时间 当前正在运行进程的命令行
last:谁在什么时间连接了系统 连接了多久
lastlog:显示系统中所有用户的最近一次的登录信息
重启命令
init 6 一般不用
reboor
shutdown -r 1 表示1分钟后重启系统-r now马上重启
关机命令
init 0
poweroff
halt 需手动关闭电源
shutdown -h 1 表示1分钟后关闭系统-h now马上
其他
which :查看命令的绝对路径和别名#which cp
alias: 查看命令的别名 #alias rm cp mv
临时修改别名 #alias rm='echo Hello SB'
永久修改 #vim /etc/profile 最后一行写入alias rm='echo Hello SB'
#source /etc/profile生效 + 编辑#vim /root/.bashrc 把 alias rm='rm -i'这一行前面加上一个注释#
权限详解
文件权限
chmod:修改权限#chmod 755 oldboy.txt 读取r=6 写入w=4 执行x=1 -=0
user 主人 group 家人 other陌生人
# chmod u+x oldboy.txt u添加x权限 u-x减去x权限 u=x u就等于x权限
chown:修改所有者和所属的用户组# chown oldboy.oldboy oldboy.txt
对于文件来说 rwx
1.r 读取文件内容
2.w 修改文件的内容,但是需要 r 的配合
没有 r 配合强制修改退出,会清空文件的内容
3.x 权限执行,需要 r 权限的配合
总结
文件 目录
r 读取文件的内容 查看目录的内容(需要 x 权限)
w 修改文件的内容(需要 r) 在目录下面创建 删除文件(需要 x 权限)
x 执行文件(需要 r) 进入到目录的权限(cd)
!!!!!!删除一个文件,要看你对这个文件所在的目录是否有 wx 权限
umask:linux控制系统默认权限命令 默认0022
根据umask计算文件的默认权限666-022=644
根据--------------目录的默认权限777-022=755
规则:
1.对于目录 777 直接减去 umask
2.对于文件 666 减去 umask 的值,如果 umask 某一位上面是奇数,减完 umask 之
后奇数位需要+1
lsattr:查看文件系统属性 a==append 只能追加
i==immutable 无敌的 不可修改
#lsattr oldboy.txt
#chattr +a oldboy.txt 增加a属性 -a 减去