linux常用命令
2018-09-19 02:46:32来源:博客园 阅读 ()
1.上传下载:
rz:上传
sz filename:下载
2.系统管理:
注销:exit logout(仅文本终端)
重启:reboot
shutdown -r 延时分钟数 “提示信息”
shutdown -r now 立即执行
关机:halt
init 0
shutdown -h 延时分钟数 “提示信息”
shutdown -h now 立即执行
3.用户/组 管理:
id:可以查看当前用户
whoami:查看当前的用户
who:查看当前已经登录的用户
添加用户:
useradd zhangsan 或者 useradd -g groupname username
passwd zhangsan
修改用户:
usermod -l 新用户名 -d 新家目录 旧用户名
删除用户:
userdel -r username (-r:删除家目录及其所有文件)
切换用户:su
su root 或者su - root:su root不会重新加载切换用户的用户变量,su - root 会重新加载用户的用户变量
获取超级用户权限:sudo
sudo 命令
有一些命令普通用户没有权限操作的,所以要用sudo来获取超级用户权限
如果普通用户要使用sudo命令,需要在/etc/sudoers文件中配置才可以使用,找到root ALL=(ALL) ALL 行,下面加入 username ALL=(ALL) NOPASSWD:ALL保存即可
增加组:
groupadd -g 组ID -r 组名 (-r:系统组 组ID小于499)
修改组:
groupmod -g 组新ID -n 组新名 组旧名
删除组:
groupdel 组名
4.网络配置:
查看ip地址:ifconfig
重启、启动、停止网络:service network restart/start/stop
VMware的3种网络类型:
VMnet0:用于虚拟桥接网络下的虚拟交换机
VMnet1:用于虚拟Host-Only网络下的虚拟交换机(真实环境和虚拟环境隔离开)
VMnet8:用于虚拟NAT网络下的虚拟交换机(网络地址转换,实现在虚拟系统里访问互联网)
5.文件系统
pwd:显示当前你所在路径
cd :进入那个目录
cd ..:回到上一级目录
cd ../..:回到 上两级目录
cd -:回到上一次所在的目录
cp:复制 cp [-abrifLP] [source] [dest]
-b:如果目的文件存在,就创造一个备份
-r:若源中有子目录,则将子目录下的文件及目录亦全部复制至目的目录
-f:若目的地有重复的文件,则覆盖原有文件
cp filename /tmp/ 复制文件
cp -r linux /tmp/ 复制文件夹
mv: 移动或改名 mv [options] 源文件或目录 目标文件或目录
-f:禁止交互操作。mv操作要覆盖某个已有目标文件时不给任何提示
mv linux1 linux2 改名 后面跟的是文件名改名
mv linux /tmp/ 移动 后面跟的是路径移动
mkdir:创建文件夹 mkdir test
rmdir: 删除文件夹 rmdir test 只能删除空文件夹
rm:删除文件/文件夹 rm [-ifr] name
-r:删除目录及子目录,目录下如果有子目录及文件也会被删除
-f:不询问直接删除
ll: 查看文件下面的东西
加权限:
x代表执行,w代表写,r代表读
chmod o+x filename其他用户
chmod g+x filename 本组用户
chmod u+x filename 自己
chmod +rwx filename所有
chmod a+x filename所有
去掉权限,就把+变为-
r=4,w=2,x=1 数字模式代表的权限 chmod 755 file
如果加权限的是一个文件夹的话要加 -R chmod -R 755 目录
chown:改变文件的所有者和所属组 chown [options] 用户或组 文件名
chown user file 如果是一个文件夹的话要加 -R
chgrp:改变文件的所属组 chgrp [options] [组] [文件]
chgrp group file 如果是一个文件夹的话要加 -R
文本编辑器VI:
切换编辑模式和命令模式:
i:当前位置
o:当前行的下一行
a:下一位置进行编辑
esc:编辑模式切换到命令模式
退出vi:
命令模式下
:q #没有修改的话可以直接退出
:q! #不保存退出
:wq #保存退出
:x #保存退出
查找:
/查找内容 #从头开始找
?查找内容 #从文件末尾开始找
显示行号: :set nu
取消显示行号: :set nonu
快速去到某一行:9
快速去到文件末尾:shift+g
删除当前位置字符:x
删除整行:dd
删除n行: ndd
复原前一个动作(撤销):u
复制一整行:yy
复制n行:nyy
粘贴:p
重复前一次操作:.
移动光标到行尾: $
移动光标到行首:0
替换字符串: :%s/scr_str/new_str/g
查看文件:
cat:用于连接并显示指定的一个或多个文件的有关信息 cat [options] 文件1 [文件2]......
cat a.txt b.txt >c.txt 重定向
cat xx > new_xx 覆盖原有的内容
cat xx >> new_xx 追加
head:显示文件的开头至标准输出中 head [参数] ... [文件] ...
head -n 行数 filename
tail:查看文件末尾内容 tail [参数] [文件]
动态查看日志: tail -f err.log
查看末尾10行日志: tail -10 err.log
动态查看末尾5行日志: tail -5f err.log
more和less:分屏显示文件内容,可以逐页或者逐行显示文件内容
less a.txt more a.txt
回车 显示下一行
空格 转到下一页
ln:创建文件链接
硬链接:ln 源文件 硬链接目标文件 可以看做文件别名、目录不可以建立
软链接:ln -s 源文件 软链接目录或文件 相当于Windows的快捷方式、可以连接目录
lsof:列出当前系统打开文件的工具 lsof [options] filename
lsof filename: 显示打开指定文件的所有进程
lsof +d DIR/ :显示目录下被进程打开的文件
lsof +D DIR/:同上,但是会搜索目录下的所有目录,时间相对较长
wc:统计指定文件中的行数、字节数、字数,并将统计结果显示输出 wc [选项] [文件]
-c:统计字节数
-l:统计行数
-m:统计字符数
-w:统计字数
clear:清屏
history:查看历史命令
搜索命令:
grep:显示文件中的匹配行 grep [参数] 字符串 文件名
无参:显示匹配行
-c:显示匹配行数
-e:字符串:匹配特殊字符串,如-开头
-i:忽略大小写
-v:输出不匹配行
例:grep -c "foo" a.txt
|:管道符 ps -ef|grep httpd|grep -v "grep"
find:查找目录下的文件 find 目标目录 搜索参数 操作参数
-name:文件名:可以跟通配符
-amin:分钟数:文件最后访问时间为指定分钟之前,负数表示之后 find / -amin +2 查找文件最后访问时间距现在时刻2分钟以上的文件
-atime:天数:文件最后访问时间为指定天数之前,负数表示之后 find / -atime -2 查找文件最后访问时间距现在时刻2天内的文件
-cmin:分钟数:文件最后修改时间为指定分钟之前,负数表示之后
-ctime:天数:文件最后修改时间为指定天数之前,负数表示之后
-user:用户名:属于用户的目录和文件
-type:文件类型 find / -type f 文件 find / -type d 目录
-size:文件大小
例:find / -name test1
6.归档压缩命令:
gzip: gzip -[1...9] [trv] file 例: gzip -1trv test.txt
gunzip: gunzip file 例:gunzip test.txt.gz
zip/unzip:压缩zip包和解压缩以.zip结尾压缩文件
zip [选项] 压缩文件名 需要压缩的文档列表
-r:递归压缩,将指定目录下的所有文件以及子目录全部压缩
unzip [选项] 压缩文件名
-o:解压时覆盖已经存在的文件,并且不要求用户确认
-d:目录名,把压缩文件解压到指定目录下
例:zip -9r /opt/etc.zip /etc #把/etc下所有文件和文件夹压缩到/opt下的etc.zip
zip -r /opt/var.zip /var -x "*.log" #把/var下所有的文件和文件夹除了以.log结尾的都压缩到/opt目录的var.zip中
unzip -o /opt/etc.zip -d /etc #把/opt/etc.zip解压到/etc目录下
tar:文件打包 tar [参数] 目标文件 源目录或文件
-c:创建新文档
-x:解压缩归档文件
-f 文件名:使用归档文件
-z:使用gzip解压缩
-v:详细输出模式
例: tar zcvf test.tar test #压缩
tar zxvf test.tar #解压缩
7.进程相关命令:
ps:显示瞬间过程的动态,使用权限是所有使用者
-e:列出所有的进程
-f:显示不同进程之间的关系
-aux:显示所有包含其它使用者的进程
常用参数是-ef和-aux
可以用管道符连接其他命令使用 。例:ps -ef|grep httpd #查询Apache相关进程
kill:用来终止指定的进程 格式:kill [参数] [进程号]
-9:强制终止进程
例:kill -9 2312 2819
命令最后加&:后台运行进程
nohup 命令 &: 后台运行进程
例:nohup sh startWebLogic.sh &
8.crontab定时任务:
crontab [-u user] 文件
crontab [-u user] {-l | -r | -e}
-e:执行文字编辑器来设定时程表,内定的文字编辑器是vi
-r:删除目前的时程表
-l:列出目前的时程表
crontab : M H D m d cmd :M分钟(0-59) H小时(0-23) D天(1-31) m月(1-12) d一星期内的天(0-6,0为星期天) cmd为运行的命令 * 代表每分钟都执行
* * * * * sh /opt/lampp/test.sh 表示每分钟执行一次test.sh这个脚本
*/5 * * * * sh /opt/lampp/test.sh 表示每5分钟执行一次test.sh这个脚本
30 21 * * * /usr/local/apache/bin/apachectl restart 表示每晚的21:30重启Apache
9.软件安装命令:
rpm:rpm [参数] [rpm安装包]
-i:安装
-U:更新(升级)
-e:卸载
-v:显示安装信息
-h:显示安装进度
例:rpm -ivh jdk.rpm #安装jdk
rpm -e jdk.rpm #卸载jdk
rpm -qa|grep xxx #查询是否已经安装这个软件
yum:yum install
yum remove
源码安装: 1. ./configure (生成编译文件) 2. make 3.make install
10.其他命令:
系统环境变量:在/etc/profile目录下
用户环境变量:~/.bashrc
export PATH=$PATH:
source /etc/profile
source ~/.bashrc
开机启动运行脚本:在/etc/rc.d/rc.local文件中加入要开机执行的脚本
临时关闭防火墙:service iptables stop,重启后会失效
查看端口号:netstat -nlpt|grep 18983 #查看这个进程号启动端口号是什么
netstat -nlpt|grep port #查看这个端口号有没有被占用
11.shell编辑&awk
awk [选项参数] '{命令参数}' file
-F fs :fs指定输入分隔符,fs可以是字符串或正则表达式,如-F:
-f scripfile:从脚本文件中读取awk命令
-v var=value :赋值一个用户定义变量,将外部变量传递给awk
awk常用的内置参数:
$0:表示整个当前行
$n:每行第n个字段
NF:字段数量变量,也就是每行有多少个字段
NR:每行的记录号,多文件记录递增
if判断:
if(expression){
statement;}
else{
statement2;}
例1.匹配文件出现内容的行:
awk '/Exception/ {print NR} ' catalina.out
例2.查询Tomcat进程号:
ps -ef|grep tomcat|grep -v "grep"|awk '{print $2}'
例3.输出Apache日志中的访问ip地址、访问路径和状态码
awk '{print "ip=="$1,"path=="$7,"code=="$9}' /opt/lampp/logs/access_log
例4.将成绩不及格的学生名称输出
awk '{if ($2>60) {} else {print $1}}' score.txt
例5.将mysql的进程号写到mysql.pid这个文件中
ps -ef|grep mysql|grep -v "gerp"|awk '{print $2>"mysql.pid"}'
shell编程:
vi test.sh
#!/bin/bash
echo "hello world"
1.变量 name='test1' 变量名和等号之间不能有空格
2.算术运算:用$(())括起来 a=$((4-2))
3.关系运算符:
其他:
查看端口号:netstat -nlpt|grep 18983 查询这个进程号启动端口号是什么
netstat -nlpt|grep port 查看这个端口号有没有被占用
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Linux系统如何设置开机自动运行脚本? 2020-06-11
- Linux指令和shell脚本 2020-06-11
- 适合开发者的最佳Linux发行版 2020-06-11
- awk命令详解 2020-06-10
- RAID 1 软件实现(Linux 系统) 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash