man page
/usr/share/man
man1 用户指令 man 1 passwd
man5 文件 man 5 passwd
man8 管理员指令
ls 查看文件
ls -l 长模式
ls -a 所有的文件
ls -al
cp 拷贝文件
cp /etc/php.ini .
cp -r /etc/x11/ . 拷贝目录
mv 移动或者重命名文件
mv /etc/host.conf .
mv host.conf /etc
mv php.ini /etc/php.txt 重命名
rm 删除文件
rm -f(强制删除不提示)/etc/php.txt
rm -rf 强制删除目录
touch 创建空文件或更新文件时间(如果文件已存在)
touch test.txt
cd 改变当前路径
cd /home
cd .. 上层目录
cd 当前目录的家目录
cd ~ 当前用户家目录
pwd 查看当前完整路径
mkdir 新建目录
mkdir test
cd
rmdir 删除目录
rmdir test 只能删除空目录
rm -rf test 强制删除
cat 查看文件内容
cat /etc/services
more 逐屏查看文件内容
more /etc/services
less 逐行查看文件内容
date 显示当前时间
cal 显示月历
cal 2008
cal 9 2008
df 查看系统磁盘容量
df -h 以KB MB GB 显示
du 记录目录下文件占用磁盘空间容量
du /etc/services
du -h /etc/services
head 显示文件开头内容
head /etc/text
tail 显示文件最后部分内容
tail /etc/test
su root
su -root
su -
exit
重启
reboot
shutdown -r now
init 6
关机
halt
shutdown -h now
poweroff
init 0
file 检查文件类型
file text.txt
文件标识类型
文件权限第一个字母
- 一般文件
d 目录文件
b 块设备文件 硬盘
c 字符设备文件 鼠标键盘 打印设备
l 链接文件 快捷方式
p 人工管道 用于不同进程之间的信息传递
文件权限
拥有者(u)
所属组的成员(g)
其他用户(o)
读(r)
写(w)
执行(X)
-rw-r--r-- 644
-rwxrwxrwx 777
chmod 更改文件权限
只有文件拥有者和root帐户可以更改文件权限
chmod u+x g+x o+x test.txt
chmod u-x g-x o-x test.txt
chmod u=rwx test.txt
chmod u=rw,g=r,o=r test.txt
chmod ugo=rwx test.txt
chmod a=rwx test.txt
chmod 777 test.txt
chmod 644 test.txt
chmod -R 更改目录和目录下所有文件权限
chmod -R 777 test.txt
ls -l --full-time 显示完整时间
chgrp 改变文件所属群组
chgrp root test.txt
chown 改变文件拥有者
chown root:root install.log
chown user.group file
ln 建立链接
硬链接 : ln 源文件 新建链接名
软链接 : ln -s 源文件 新建链接名
硬链接 完全等同与源文件 不可以跨文件系统 不可以给目录建立链接
软链接 相当于源文件的快捷方式
echo "hello" >/home/etc/test.txt
sudo useradd username
添加用户
.文件是对当前目录的一个硬链接
..文件是对上级目录的一个硬链接
pwd 显示当前目录的完整路径
执行权限表示用户是否可以进入此目录,将他当成工作目录
同时也没有写入权限,必须有执行权限时,写入权限才有效
强制位 冒险位
针对 u,g,o分别有set uid ,set gid,sticky
添加在执行权限位置上,如果已有执行权限则强制位和冒险位用小写字母表示
set uid和set gid在u和g的x位置上各采用一个s
sticky使用一个t
chmod g+s test 强制在此目录下任何人建立的文件都和目录属于同一组
chmod o-t /tmp
目录设定冒险位表示此目录只有文件拥有者和root用户有权限删除文件
强制位对文件的作用
默认情况下,用户运行一个指令,会以该用户的身份来运行
指令文件上的强制位可以让指令文件以文件的拥有者或所属组的身份运行进程
chmod u-s /bin/ping
/usr/bin/passwd
set uid chmod u+s 只能对文件设定set uid
set gid chmod g+s 都可以
sticky chmod o+t 只能对目录设定冒险位
强制位和冒险位也可以通过一个数字加和,放在读写执行的三位数字之前来指定
4(set uid)
2(set gid)
1(sticky)
4777
4644
2777
2644
1777
1644
6777
6644
3777
3644
0777
0644
umask
umask -S
一般用户的umask值为002
系统用户的umask值为022
没有掩码的情况下
文件的默认权限是 rw-rw-rw- 666
目录的默认权限是rwxrwxrwx 777
文件和目录的真实权限为默认权限减去umask值
修改umask值 例如:umask 003
根目录下的目录
/bin 存储常用用户指令
/boot 存储核心,模块映像等启动文件
/dev 存储设备文件
/etc 存储系统,服务的配置目录与文件
/home 存放个人主目录
/lib 存放库文件,诸如核心模块,驱动
/lost+found : 存储fack用的孤儿文件
/mnt 系统加载文件系统时用的常用挂载点
/opt 第三方工具使用的安装目录
/proc 虚拟文件系统,包含系统讯息等资料
/root root用户的主目录
/sbin 存储系统管理用的指令
/tmp 临时文件的暂存点
/usr 存放和用户直接相关的文件和目录
/var 存储在系统运行中可能会更改的数据
输入:过滤器的数据来源
标准输入 stdin(0):默认是键盘
输出: 过滤器的数据去向
标准输出:stdout(1):默认是终端屏幕
错误输出:报错讯息与标准输出走不同的I/O通道
标准错误输出:stderr(2):默认是终端屏幕
重定向:标准输入,输出与错误输出,都可以用特定符号改变数据来源或去向
/dev/sdt*
使用< 来重定向输入源
command < file
tr 'A-Z' 'a-z' < .bash_profile
<<从当前文档输入
cat >cat.file<>this is test
>!
使用>改变数据输出目标
ls -al > list.file
文件已有内容将被清除
覆盖与追加
使用>> 可以将输出追加到文件里
ls >list.file
ls -al >>list.file
使用2> 将报错讯息重定向入一个文件
ls-l 2> test
使用2>>将报错讯息追加入一个文件
ls-l 2>>test
双重重定向
一次性地将正确信息和错误讯息分别输出到两个单独的文件
find /etc -name passwd 2> stderr >stdout
使用&>将所有输出重定向到同一个文件
find /etc -name passwd &> allout
find /etc -name passwd &> allout 2>&1
管道
使用 | 将前一个过滤器的输出直接送入后一个过滤器的输入
ls -l | grep pass
ls -al /etc | more
允许多重管道
ls -al /etc | more | grep fstab
cat < file >fileb 拷贝文件
echo "hello" > filea
cat filea
touch fileb
cat < filea > fileb
cat fileb
cat file.* > file
将多个小文件合并成一个文件
cat filea;cat fileb
hello
hello
cat filea fileb >file
cat file
hello
hello
cat file* > file
cat file
hello
hello
hello
hello
which
显示一个可执行文件的完整路径
按照alias——> $PATH的顺序查找
which ls
whereis
搜索一个可执行工具及其相关配置帮助信息
whereis ls
slocate 关键字搜索
语法
slocate [关键字]
locate
ls -l /usr/bin/locate
find [路径][参数][表达式]
find /root -user root
find /root -group root
find /etc -name passwd
find /etc -size +1000k
find /etc -size -1000k
find /etc -type f
find /dev -type b
find /etc -type l
find /dev -type c
find /root -type d
find /etc -nouser
find /etc -nogroup
find /home -perm 0644
find /home -perm +6000 二进制前2位有一即可 设置呢set uid 或者 set gid
find /home -perm -6000 二进制前2位必须都是1 缺一不可 设置set uid和set gid
find 加exec 接额外的命令
find /home -perm 6000 -exec chown ofred.ofred {} \ ;
{}代表find找到的文件
\ 禁止转意
; 表示本行指令结束
wc 统计文件的行,词,字数
wc linux笔记.txt
wc -l linux笔记.txt 只查看行数
wc -w linux笔记.txt 只查看字数
wc -c linux笔记.txt 只查看字符数
grep 显示文件中匹配关键字的行
grep "txt" linux笔记.txt
grep "a" text
grep -n "a" text 搜索时显示行号
grep -v "a" text 搜索没有a字符的行
sort 按序重排文本显示
-r 反向配列
-t
-k
diff 报告文本差异内容
diff abc ABC
comp 报告文件差异位置
uniq 输出文件中的内容(去除重复的行)
sort file | uniq
cut 显示文件中的某一列
cut -f3 text 显示text文件第三列内容
cut -f2 -d, text 以,号为间隔 截取第二行
cut -c4-8 text 显示第4个到第8个字符间的列内容
paste 将文本按列拼接 水平拼接
paste abc ABC > text
cat abc ABC > text 将文件垂直拼接
压缩
gzip gunzip
只能对文件进行压缩
gzip text
gunzip text.gz
gzip -d text.gz
zcat file.gz 查看压缩文件内的内容
compress uncompress
旧的unix压缩工具
可以压缩文件和目录
bzip2 bunzip2
比gzip压缩率更高
只能对文件进行压缩
bzip2 text
bunzip2 text.bz2
bzip2 -d text.bz2
bzcat file.bz2
tar
打包文件和目录
c: 将文件备份出来
v: 将过程输出
x: 从一个文件中解出备份
tar cvf test.tar test
tar cvf 1.tar test test1 将两个文件打包在一起
tar xvf test.tar 解包
tar tf 1.tar 查看tar包里面的内容
tar cvf 1.tar test -C /home 指定打包后的文件路径
tar zcvf 1.tar.gz test 打包并压缩
tar zxvf 1.tar.gz 解压并解包