centos基本命令
---------------------------
CentOS Windows
$>ls cmd>dir //
$>ls --help //查看命令帮助
$>man ls //查看命令帮助
$>clear cmd>cls //清屏
$>cd /home cmd>cd d:/ //切换目录
$>cd . cmd>cd . //进入当前目录
$>cd .. cmd>cd .. //进入上级目录
$>cd /home/centos cmd>cd d:/xx/x/x //进入绝对路径
$>pwd //显式当前目录
$>whoami //显式当前用户名
$>su root //切换用户,输入密码
$>passwd //修改当前用户的密码
$>ifconfig cmd>ipconfig //查看ip地址
$>ping localhost cmd>ping localhost //查看网络连通情况
$>ping www.baidu.com cmd>ping www.baidu.com //查看网络连通情况
$>启动桌面版的网卡
on.
$>su centos
$>cd /home/centos
$>cd ~ //回到主目录
$>cd - //回到上次的目录
$>ll //别名,ls -l --autocolor...
$>alias //查看所有的别名
$>ls -a -l -h //查看当前目录-h:人性化 -l:列表 -a:显式.开头
$>mkdir ~/Downloads/a //创建目录
$>touch ~/Downloads/a/1.txt //创建文件
$>echo helloworld > 1.txt //重定向输出
$>cat 1.txt //查看文件
$>cp 1.txt 2.txt //复制文件
$>rm 1.txt //删除文件
$>rm -rf tmp //强行递归删除
$>mv a.txt tmp/ //移动文件
[centos client中切换模式]
ctrl + alt + f6 //切换到文本模式
ctrl + alt //切换鼠标
ctrl + alt + f1 //切换桌面模式.
ctrl + alt + f5 //切换到新的文本模式
[nano文本编辑器,命令行模式]
$>nano a.txt //打开nano编辑器,编辑a.txt文件
$>....
$>ctrl + o //保存文件,提示后直接回车
$>ctrl + x //退出文件
$>ctrl + k //cut 文本
$>ctrl + u //cut 文本
$>more a.txt //分屏显式
q:退出
h:帮助
$>more -5 a.txt //显式前5行内容
$>tail a.txt //最后10行内容
$>find . | more // | 是管道符,前面的命令的输出作为后面命令输入。
$>find ~
$>ls -aR ~ //递归显式主目录所有的文件.(a表示包含.开头的文件)
$>head a.txt //显式前10行
$>head -n 10 a.txt //显式前10行
$>head -10 a.txt //显式前10行
$>tail a.txt
$>tail -n 20 a.txt
$>tail -20 a.txt
$>tail --lines=20 a.txt
$>wc -c -l -w a.txt //统计文本信息,
//显式统计信息-c:字节 -l:line -w:word
$>hostname //查看主机名称
$>uname -r //查看系统内核
$>uname -a //查看系统内核
$>uname -p //查看系统内核
$>uname -m //查看系统内核
$>file xxx.xx //查看文件类型
$>gzip a.txt //原地压缩
$>gzip -d a.txt //原地压缩
$>gzip -dr tmp //递归操纵文件夹下的文件
$>gunzip a.txt.gz //解压缩文件
$>tar -cvf my.tar 1.txt tmp //创建归档文件
$>tar -vxf my.tar //解档文件
$>find . | grep txt | cp `xargs` temp //xargs是多行变单行,使用空格替换回车换行符.
//`` : 是强制命令解析。
$>ping `cat a.txt` //命令嵌套
$>which echo //查看命令的文件路径
命令嵌套
----------------
1.使用``
$>echo `cat b.txt` //命令解析,无法嵌套
$>$(... $()) //支持命令的嵌套
关机重启命令
----------------
$>reboot //重启
$>halt //停止,黑屏
//halt -p === poweroff
//halt -r === reboot
$>poweroff //关机
$>shutdown //shutdown now,
磁盘分区使用
---------------------------
$>fdisk -l /dev/sda
查看磁盘使用情况(disk free)
---------------------------
$>df -ah /home/centos //查看
访问文件(夹)物理位置
----------------------
$>cd -P /t //进入/t的物理位置
$>pwd -P //显式当前目录的物理位置
dirname
-------------
取出指定地址的上级目录.
$>dirname /a/b/c/d
$>/a/b/c
basename
--------------
取出当前地址的上级目录.
$>dirname /a/b/c/d
$>d
权限控制涉及范围
----------------
U:user , rwx r-x ---
G:group ,
O:other ,
[linux的权限]
$>chmod //修改文件(夹)权限
$>chmod g-w //去除group中write权.
chmod //不受文件权限控制,只有owner和root才具有文件权限的修改权。
修改文件的owner,change owner
------------------------------
chown -R root:root a.txt //递归修改owner
chmod -R 777 xxx //递归修改权限.
权限
-----------------
r //100 = 4
//文件 :读取内容,
//文件夹:是查看文件夹的内容
w //文件 :写数据到文件
//文件夹:增删文件.
//10 = 2
x //文件 : 运行程序
//文件夹: 进入该目录.
// 1 = 1
访问环境变量
-----------------
echo ${PATH} //ok
echo $PATH //ok
echo "$PATH" //ok
echo '$PATH' //''原样输出
export定义环境变量,只在session中有效
---------------------------------
$>export name=${PATH}:tom
$>export name=${Var1:-${Var2}} //设置name为${Var1}的值,Var1没有设置为${Var2}的值。
命令执行过程
--------------------------------
$? //命令的返回值存储变量,0:成功 1:失败。
$# //参数个数
$1 //第几个参数
$0 //当前脚本(命令)名称
$@ //取出所有参数
shift //参数左移
${a/b/c} //
if
---------------
语法:
if COMMANDS; then COMMANDS; [ elif COMMANDS; then COMMANDS; ]... [ else COMMANDS; ] fi
if [ $# -lt 3 ]; then xx ; fi
使用for循环输出1 - 100个数
----------------------------
for NAME [in WORDS ... ] ; do COMMANDS; done
for x in a b c d ; do echo $x ; done ;
命令组合
-------------
a && b ; //a成功后执行b,
a || b ; //a失败后之后b;
a ; b //无逻辑关系,改变目录
(a ; b) //无逻辑关系,不改变目录
netcat
-------------------
瑞士军刀。
[server]
nc -lk 8888 //-l : 监听
//-k : 接受多个连接
[client]
nc ip 8888 ; //客户端指定服务器端
windows下nc
----------------
1.配置环境变量path
2.常用命令
cmd>nc -h //看帮助
3.启动服务器端
cmd>nc -l -p 8888 -s 0.0.0.0 //通配ip
通过nc实现文件传输
----------------------
0.使用重定向(输入|输出)。
1.server(centos)
nc -l 8888 > a.txt ;
查看端口
------------------
netstat -anop //显式网络情况
//-a : 所有socket
//-n : 显式数字地址
//-p : pid
//-o : timer
service管理命令
-------------------
1.查看服务的状态
$>service server_name status //语法
$>service network status
$>service network start //启动
$>service network stop //停止
$>service network restart //重启
mount挂载外设
-------------------
1.右键client右下角的光盘图标 ->设置
2.iso文件
选择一个iso镜像文件。
3.右键client右下角的光盘图标 ->连接.
4.创建文件夹/mnt/cdrom
$>su root
$>mkdir cdrom
5.挂载光驱/dev/cdrom到/mnt/cdrom
$>mount /dev/cdrom /mnt/cdrom
$>find . /mnt/cdrom
卸载外设
--------------------
1.从挂载的目录中出来,否则出现设备繁忙
$>cd ..
2.使用umount进行卸载
$>umount /mnt/cdrom
创建连接文件
------------------
1.硬链接
两个完全相同文件,类似于实时备份。两个文件之间完全同步。
删除时,只删一个。
目录不能使用硬链接。
ln a.txt alink //a.txt:目标文件, alink:连接名称.
2.符号连接
相当于快捷方式.
可以对文件,也可以对文件夹创建符号连接。
符号连接存在的时候,可以删除目标文件。
$>ln -s a.txt alink //a.txt: 目标文件 alink:连接名称(symbolic)
sudo
-------------------
临时借用root的权限执行命令,只在当前命令下有效。命令结束后,还是原来用户。
1.配置当前用户具有sudo的执行权利
[/etc/sudoers]
...
###找到root出现的位置在下一行添加上centos用户的信息
root ALL=(ALL) ALL
centos ALL=(ALL) ALL
...
$>sudo chown -R centos:centos .
job
---------------------
放到后台运行的进程.
1.将程序放到后台运行,以&结尾.
$>nano b.txt &
2.查看后台运行的jobs数
$>jobs
3.切换后台作业到前台来.
$>fg %n //n是job编号.
4.前台正在的进程,放到后台。
ctrl + z
5.让后作业运行
$>bg %1 //
6.杀死作业
$>kill %1 //
进程查看,prcess show
---------------------
$>ps -Af |grep gnome //-A:所有进程 -f:所有列格式.
$>top //动态显示进程信息。含有cpu、内存的使用情况.
//q,按照q退出。
cut
---------------------
剪切显示文件的每一行。
$>cut -c 1-5 a.txt //从第一个字符开始,下标从1开始。
$>ps -Af | cut -c 45-80 | more //