ls命令:
/bin/ls
ls
ls -la
-a (all)
-l 详细信息显示
-d 查看目录属性
ls -lh 显示单位k
ls -ld /etc 显示目录本身情况
ls -i 查看每个id号,类似每个人的身份证号
ls -l |grep httpd 显示有关httpd文件
------------------------------------------
mkdir命令:
/bin/mkdir
mkdir /tmp/xiaodianying
mkdir /tmp/japan/boduo 这个是不能实现
mkdir -p /tmp/japan/boduo 就可以实现创建(-p 递归创建)
------------------------------------------
cd命令:
shell内置命令
cd
cd ..
------------------------------------------
pwd命令:
/bin/pwd
pwd 显示当前目录(print working directory)
------------------------------------------
rmdir命令:
/bin/rmdir
rmdir (删除的命令用的并不多,只能删除空目录)
------------------------------------------
cp命令:
/bin/cp
cp /etc/grub.conf /tmp 复制文件
cp /root/install.log /root/install.log.syslog /tmp 把install.log和install.log.syslog复制到tmp,同时复制两个文件,可以复制n多个,最后一个目标路径,但是时间改变了
cp -r 复制目录
cp -p 复制文件,但是时间不会改变(保留文件属性)
cp -r /tmp/japan/longze /root/shenchao //longze拷贝过去叫shenchao
cp -rp /tmp/japan/longze /tmp/japan/boduo /root 将longze和boduo拷贝到root下,保持目录属性
cp -r test/ /usr/local/apache2/htdocs/phpcms #把当前目录下test改名成phpcms拷到指定位置
cp -r /home/usera/. /mnt/temp #吧usera下所有文件拷贝到temp下,
cp -i file1 file2 #(将文档 file1 复制成 file2 . –i为提示确认)
cp file1 dir1 # (将文档 file1 复制到目录 dir1 下,文件名仍为 file1)
cp /tmp/file1 . #(将目录 /tmp 下的文档 file1复制到现行目录下,档名仍为 file1)
cp /tmp/file1 file2 #(将目录 /tmp 下的文档file1现行目录下,档名为file2
cp -r dir1 dir2 #(recursive copy) 复制整个目录.若目录 dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2 下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2)
------------------------------------------
mv命令:
/bin/mv
剪切和改名都是用mv
mv cangjing canglaoshi 即是改名成canglaoshi
------------------------------------------
rm命令:
/bin/rm
rm -rf (-r删除目录,-f强制执行,删除文件和目录)
rm –rf *.cap 删除当前目录cap后缀
find . -name "*.o" | xargs rm –f 查找所有.o文件
------------------------------------------
touch命令:
/bin/touch
touch shentao girl 这个是创建了2个文件,一个叫shenchao和girl
touch “program files” 这样创建了一个文件,不建议用空格,基本上所有的符号都能用,不能用/
touch -d “10/13/2013” *.sh #所有的.sh文件修改到三个月前(2015年10月13)的时间
touch -d “6:03pm” file #am, pm 或是 24 小时的格式
touch -d “05/06/2000” file
touch -d “6:03pm 05/06/2000” file # 6 May 2000
touch -t #修改时间
------------------------------------------
cat命令:
cat
/bin/cat
cat -n /etc/issue 浏览文件,显示行号
cat -n /etc/services 是很长的文件,一直闪,不适合浏览长文件
cat /etc/issue 查看系统版本
cat /proc/version
------------------------------------------
tac命令:
/usr/bin/tac
tac /etc/issue 显示文件内容(反向显示)
------------------------------------------
more命令:
/bin/more(空格或f翻页,回车换行,q或Q退出)
more /etc/services
------------------------------------------
less命令:
/usr/bin/less
less /etc/services
上箭头一行行翻
page up 翻页
浏览状态时按/要搜索的词(例如/service,就会出来service,按n匹配下一个关键词)
------------------------------------------
head命令:
/usr/bin/head
head 默认显示前10行
head /etc/services
head -n 20 /etc/services
脚本是什么写,谁写 的,脚本是干什么的用,基本都在前几行
------------------------------------------
tail命令:
/usr/bin/tail
退出tail状态按ctrl+c,
这个命令监控日志用的比较多,平常很少
tail -n 18 /etc/services
tail -f 动态显示文件末尾内容
ifconfig eth0:1 192.168.1.1 给网卡添加多个ip地址
tail -f normal.log (查看项目实时的日志)
tail -200f normal.log (查看近200条实时运行的日志)
tail -200 normal.log (查看近200条日志(不实时))
------------------------------------------
ln命令:
/bin/ln
ln -s 原文件 目标文件(创建软链接)
ln /etc/issue /tmp/issue.hard创建硬链接
软链接:类似windows快捷方式,1.lrwxrwxrwx l表示软链接,下图中有个箭头指向实际目录
用的比较多,所有给了所有权限,但是不代表源文件的权限,源文件丢失,会有红色一直闪动
ln abc /test/abc2 # 把当前目录下的abc文件,创建个硬链接到/test目录下并命名为abc2,创建硬链接其inode号一致
ln -s /test2/abc2 /test/abc3 #创建软件abc3指向abc2,后面是快捷
------------------------------------------
echo命令:
echo "www.baidu.com">>/etc/issue 往文件中写入一行
------------------------------------------
chmod命令:
chmod g+w,o-r japan.list //这用的比较少---
chmod a+x japan.list #a 代表 全部
r 4 w 2 x 1 //数字表示用的比较多
chmod 640 japan.list //数字下修改
chmod -R 777 /tmp/a 递归修改
file
r: cat/more/head/tail/less
w: vim
x: script command
directory:
r: ls
w: touch/mkdir/rmidr/rm
x: cd
------------------------------------------
chown命令:
chown改变所有者
chown shenchao file 改变file所有者为shenchao
chown root /home/linzhiling/abcd 改变文件的所有者,所有者必须是存在的
chown -R mysql . #递归改变
改变拥有者和群组
#chown mail:mail log2012.log
------------------------------------------
chgrp命令:
chgrp #改变所属组
chgrp test组 files # 改变文件files所属组为test组
chgrp -R 组名 . #递归改变
------------------------------------------
umask命令:
umask 设置缺省权限
umask -S
umask虽然创建默认x权限
但是touch创建文件还是没有x权限,linnux是为了安全,所有的木马程序可执行
0022 0 022 ----w--w- 错误的表示
777-022=755 rwxr-xr-x 真正的
早期只能umask看
rwxr-xr-- 754
777-754=023
umask 023 缺省权限,不建议更改,默认权限022比较合理
mkdir test
ls -ld test
只有root才能改所有者
------------------------------------------
find命令:
find 搜索范围 匹配条件
find / -name init 搜索所有根目录下init,精准搜索,越精准越好
find /etc -name *init* 包含init都会被列出
find /etc -name init??? 找init开头,后面3个字符,?匹配1个文件夹
find /etc -iname init??? 不区分大小
find / -size +204800 大于100MB的文件,默认是数据块表示的
1个数据块 512字节 0.5k 1k=2个数据块
100MB=102400KB =204800数据块
find /etc -cmin -5 在etc下查找5分钟内被修改过的文件和目录
-多少时间内
+超过多少时间
-amin 访问时间
-cmin change时间
-mmin 文件内容修改时间
find /etc -size +163840 -a -size -204800 //注意有两个size
find /etc -name inittab -exec ls-l {} \; 对搜索结果执行操作,{}后面有个分号,-exec/-ok, -ok:会提示是否确认执行
find / -name \*.sh
------------------------------------------
locate命令:
locate 不搜索tmp文件
locate inittab
updatedb
locate -i teacher.cang //找到了,加上-i,不区分大小写
------------------------------------------
which命令:
which cp //大家都能用的,放在bin下
which useradd 发现要root才能用这个命令放在sbin下
which rm 还能看到别名rm -i=rm
/bin/rm /tmp/liuyifei 系统本身并没有确认删除的机制
which cd 都查不到,查不到的都是shell内置命令
whereis命令:
whereis useradd
可以搜索可以查到这个帮助文档路径
------------------------------------------
grep命令:
grep 选项 搜索内容 文件名 #搜索行
选项:
-i 忽略大小写
-n 输出行号
-v 反向查找
--color=auto 搜索出的关键字用颜色显示
例子:
grep "root" /etc/passwd
grep文件中搜索
more /etc/inittab 里面的#表示注释行
grep multiuser /etc/inittab
grep -i multiuser /etc/inittab 不区分大小写
grep -v # /etc/inittab 表示#所在行都去掉,这样不好,我没测试成功(-v排除指定内容)
grep -v ^# /etc/inittab 加个^表示#开头的行的去掉
grep --version 查看grep版本
命令 --version都可以查看版本,缩写—v
------------------------------------------
man services
在:输入-a快速到-a,n下一个
more /etc/services
不能man /etc/services
直接man services
man date #显示命令
whatis命令:
whatis ls #查看简短的命令帮助
apropos命令:
apropos servies 查看配置文件信息帮助
apropos inittab
touch --help #显示常用的帮助信息
------------------------------------------
date命令:
date 031410272014.18 更改时间,不用去记忆格式,用man查询下格式
MMDDhhmm[[CC]YY][.ss]
MM 为月份
DD 为日
hh 为小时
mm 为分钟
CC 为年份前两位数字
YY 为年份
ss 为秒数
info 也是显示帮助信息,没有本质区别,早期的没有这个命令
#时区显示
date -R
Wed, 04 Nov 2020 01:32:50 -0500
rdate
美国授时中心 time.nist.gov
#rdate -s time.nist.gov
ntpdate命令:
上海交大ntp服务
#ntpdate ntp.sjtu.edu.cn
------------------------------------------
who命令:
who用户登录信息
w 用户登录详细信息
查看最后一次重启时间命令:who -b
------------------------------------------
gzip命令:
-d或--decompress或----uncompress 解开压缩文件。
gzip .gz格式
touch boduo
gzip boduo 不会保留源文件
gzip –d #解压
------------------------------------------
gunzip命令:
gunzip boduo.gz
gzip -d 也可以解压
gzip只能压缩文件,不保留源文件
------------------------------------------
tar命令:
tar 打包目录(-c打包,-v显示详细信息,-f指定文件名,-z打包同时压缩,-x解压包,-j这个参数来调用gzip)
tar -cvf japan.tar japan (japan.tar也可以叫japan.123,但为了区分最好用japan.tar)
gzip japan.tar //先打包再压缩的步骤
ls //显示japan.tar.gz,常见的源代码安装包
tar -zcf japan.tar.gz japan 打包的时候同时压缩,备份的时候,也可以这么做
tar -zxvf japan.tar.gz 解压包命令
tar -cjf japan.tar.bz2 japan 压缩成tar.bz2,同样可以达到tar.bz2的效果,也很常用
tar -xjf japan.tar.bz2 解压缩tar.bz2格式的文件
tar -ztvf etc.tar.gz #查看下文件压缩包,不解压下
tar xJvf ***.tar.xz #解压tar.xz格式的
------------------------------------------
zip命令:
zip (-r压缩目录)
zip boduo.zip bodou 源文件依然保留,压缩比
zip -r japan.zip japan
zip -sf #
zip -sf test.zip #查看zip内容,不解压
------------------------------------------
unzip命令:
unzip test.zip
unzip -d test test.zip #解压到指定目录
unzip -l test.zip #查看 zip 文件的内容,不解压,会查看到例如:ntopng-dev/tools/wifi_router.sh,ntopng-dev为一级路径,tools为二级
------------------------------------------
bzip2命令:
bzip2 (-k,压缩保留源文件)
bzip2 压缩比惊人,大文件建议 用这个
bzip2 -k boduo 保留原文件
tar -cjf japan.tar.bz2 japan 同样可以达到tar.bz2的效果,也很常用
------------------------------------------
bunzip2命令:
bunzip2(-k ,解压缩后保留原文件)
bunzip2 -k boduo.bz2
tar -xjf japan.tar.bz2
------------------------------------------
write命令:
(给在线用户发送,ctrl+D保存命令)
write linzhiling
------------------------------------------
wall命令:
wall 发广播消息
wall shenchao is honest man!
------------------------------------------
ping命令:
ping -c 3 192.168.1.1 发送几次
------------------------------------------
mail命令:
mail root 查看发送邮件消息
1.mail
2.输入1查看邮件
h 再看邮件
d 1 删除邮件
ctrl +d 退出mail命令
------------------------------------------
last命令:
列出登入过系统的用户消息
last -w 默认显示8字符,可以显示用户名长的用户
查看历史重启时间命令:last reboot
------------------------------------------
lastlog命令:
lastlog -u linzhiling 检查某个用户上次登录时间
------------------------------------------
netstat命令:
(-t :tcp协议,-u:udp协议,-l:监听,-r:路由,-n:显示ip地址和端口号)
netstat -tlun查看本机监听的端口
netstat -an 查看本机所有网络连接
netstat -rn 查看本机路由表
netstat -gn #查看组播路由
------------------------------------------
setup命令
出现网络配置框
配置完,输入service network restart
------------------------------------------
mount命令:
mkdir /mnt/cdrom
mount -t iso9660 /dev/sr0 /mnt/cdrom/ 设备硬件(设备文件名)和软件盘符连接就是一个挂载(-t可以省略)(
mount iso9660 /dev/sr0 /mnt/cdrom/
ll /dev/cdrom 可以看到是个软链接
------------------------------------------
umount命令:
umount /dev/sr0 如果这个设备之前有其他挂载,就需要卸载后才能挂载,不能在光盘目录下卸载
cd /mnt/cdrom/ 进入光盘文件
umount /dev/sr0 提示设备在忙
cd 退出
umount dev/sr0 就可以解除挂载
cd /mnt/cdrom/
ls 查看下
------------------------------------------
图形化
startx
############
shutdown命令:
shutdown -h now 关机
shutdown -h 20:30关机
shutdown -r now 重启
shutdown -c 取消前一个关机命令
建议用这个,因为它更安全,因为关之前会保存相关东西
halt 直接关机,关闭电源
init 0 关机
init 6 重启
cat /etc/inittab 可以查询到,记不住的话
x11,xwindow的意思,大写的X
id:3:initdefault: 冒号要注意
init 5
没切换成功
runlevel 表示从3切换到5,虽然没切换成功
3 5
init 3
runlevel
5 3
------------------------------------------
logout命令:
切记logout要输,否则以后服务器出什么问题都不知道
------------------------------------------
vim命令:
5.1文本比编辑器vim
早期的版本叫vi
设置行号
cd /etc/vim #
cp vimrc vimrc.bak
vim vimrc
set nu #最后一行加入
vi shenchao
shenchao is nice girl
输入a
输入o,插入模式
命令模式下输入:,就可以编辑模式,set mu(添加行号)
:wq保存退出
:syntax on 语法高亮显示
:syntax enable
:syntax manual
:syntax off
:set spell
#即可启用拼写检查
#更多帮助信息可以看 :help spell
记忆就aio
vi shenchao.mseeage
定位命令:
:set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最后一行
nG 到第几行
:n 到第几行
$ 移至行尾
0 移至行首
821G到821
:1000到1000行
删除命令:
x 删除光标所在处字符
nx 删除光标所在处后n个字符
dd 删除光标所在行,ndd删除n行
dG 删除光标所在行到文件末尾内容
D 删除光标所在处到行尾内容
:n1.n2d 删除指定范围的行