【ACCESS精品源码栏目提醒】:网学会员鉴于大家对ACCESS精品源码十分关注,论文会员在此为大家搜集整理了“运维常用linux命令、shell技巧范例 - 软件工程”一文,供大家参考学习
linux 常用命令--------雪松整理Q 群: 198173206 欢迎 linux 系统运维朋友加入!博客: http://hi.baidu.com/quanzhou722/blog错误在所难免,还望指正!1 文件管理2 软件管理3 系统管理4 服务管理5 网络管理6 磁盘管理7 用户管理8 脚本相关9 服务配置---------------------------------- 1 文件管理----------------------------------创建空白文件touch不提示删除非空目录rm -rf 目录名-r:递归删除 -f 强制 恢复 rm 删除的文件ext3查看磁盘分区格式df -T卸载挂载umount /data/ext3grep /dev/sdb1 --ls --inode 2记录信息继续查找目录下文件 inode 信息ext3grep /dev/sdb1 --ls --inode 131081 此处是 inode记录下 inode 信息开始恢复目录ext3grep /dev/sdb1 --restore-inode 49153windows 文本转 linux 文本dos2unixlinux 文本转 windows 文本unix2dos转换编码iconv -f gbk -t utf8 原.txt gt 新.txt查看 md5 值md5sum硬链接ln符号连接ln -s查看上下翻页且显示行号cat nl lessq 退出结束状态ctrlz查看文件开头内容head查看文件结尾内容tail -f 监视日志文件检查文件类型file重命名renamerename source_pattern target_pattern source_files更改默认权限umask按数字排序sort -n按数字倒叙sort -nr过滤重复行sort -u删除重复的行uniq重复的行出现次数uniq -c只显示不重复行uniq -u将两个文件合并用 tab 键分隔开paste a b将两个文件合并指定符号隔开paste -d a b将多行数据合并到一行用 tab 键隔开paste -s a设置隐藏属性chattr - ASacdistu 文件或目录向下分面器more搜索locate 字符串查看行数wc -l实时某个目录下查看最新改动过的文件watch -d -n 1 df ls -FlAt /path快速备份一个文件cp filename.bak配置编辑器gconf-editorvi 配置文件vi /etc/vimrc编辑文件vim打开行号:set nu取消行号:set nonu跳转到 200200G取消高亮:nohl设置自动缩进:set autoindent查看文本格式set ff改为 unix 格式set binary向前翻页ctrl U向后翻页ctrl D全部替换g/字符 1/s//字符 2/gs/字符 1/字符 2/g 普通用户打开文档不能保存 tee 是一个把 stdin 保存到文件的小工具而是 vim 当中一个只读寄存器的名字总保存着当前编辑文件的文件路径:w sudo tee 按文件名查找find /etc -name http查找某一类型文件find . -type f按照文件权限查找find / -perm按照文件属主查找find / -user按照文件所属的组来查找文件find / -group文件使用时间在 N 天以内find / -atime -n文件使用时间在 N 天以前find / -atime n文件内容改变时间在 N 天以内find / -mtime -n文件内容改变时间在 N 天以前find / -mtime n文件状态改变时间在 N 天前find / -ctime n文件状态改变时间在 N 天内find / -ctime -n linux 文件无创建时间 Access 使用时间 Modify 内容修改时间 Change 状态改变时间权限、属主查找文件长度大于 1M 字节的文件find / -size 1000000c -print按名字查找文件传递给-exec 后命令find /etc -name quotpasswdquot -exec grep quotxuesongquot 查找文件名,不取路径find . -name t -exec basename ---------------------------------- 2 软件管理----------------------------------解包 tartar xvf 1.tar -C 目录打包 tartar -cvf 1.tar 查看 tartar tvf 1.tar给 tar 追加文件tar -rvf 1.tar 文件名解包 gztar zxvpf gz.tar.gz打包 gztar zcvpf gz.tar.gz查看 gztar ztvpf gz.tar.gz解压 bzip2bzip2 -dv 1.tar.bz2解压 gzip 到 targzip -dv 1.tar.gz压缩 tar 到 gzgzip -v 1.tarbzip2 压缩bzip2 -v 1.tar查看 bzip2bzcatrpm 安装rpm -ivh卸载rpm -e lynx强制卸载rpm -e lynx --nodeps测试rpm --test lynx查看所有安装的 rpm 包rpm -qa查找包是否安装rpm -qa grep http解压 zipunzip zip.zip压缩 zipzip zip.zip rar3.6 下载地址http://www.rarsoft.com/rar/rarlinux-3.6.0.tar.gz压缩文件为 rar 包rar a rar.rar .jpg解压 rar 包unrar x rar.rar7z 压缩7z a 7z.7z 7z 解压7z e 7z.7z查看字符行zgrep 字符 1.gz打包/home /etc ,但排除 /home/dmtsaitar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/ /etc在 /home 当中,比 2005/06/01 新的文件才备份tar -N quot2005/06/01quot -zcvf home.tar.gz /home下载wgetrc文本上网lynx制作镜像cp -v /dev/dvd /software/rhel4.6.iso9660清除编译结果make clean源码安装./configure --help less./configure --prefix/usr/local/makemake installperl 程序编译perl Makefile.PLmakemake testmake installperl 程序编译python file.py编译 c 程序gcc -g hello.c -o hello---------------------------------- 3 系统管理----------------------------------终端锁屏 CtrlS解锁屏 CtrlQPS1 环境变量控制提示显示PS1u H w A 开机启动模式vi /etc/inittab查找命令的目录whereis查看当前要执行的命令所在的路径which让部命令后台运行命令 amp将前台放入后台暂停ctrlz查看后台运行程序jobs启动后台暂停进程bg 2调回后台进程fg 2后台运行不受 shell 退出影响nohup cmd amp清空整个屏幕clear重新初始化屏幕reset查询用过的命令默认 1000 条history清楚记录命令history -ccat /root/.bash_history查看登陆过的用户信息lastlast -n userwho /var/log/wtmp列出登录系统失败的用户相关信息lastb -a/var/log/btmp防火墙日志tail -f /var/log/messagesssh 日志tail -f /var/log/secure随机生成密码mkpasswd-l 位数 -C 大小 -c 小写 -d 数字 -s 特殊字符mkpasswd -l 8 -C 2 -c 2 -d 4 -s 0当前在线用户whow查看当前用户名whoami查看登陆用户名logname显示月历cal查看服务器启动时间uptime设日期date -s 20091112设时间date -s 18:30:50同步时间/usr/sbin/ntpdate stdtime.gov.hk7 天前日期date -d quot7 days agoquot Ymd日期格式转换date Y-m-d -d 20110902日期和时间date Y-m-d_X查看时间hwclock账户影子文件/etc/shadow列出所有语系locale -a修改语言LANGen修改编码vi /etc/sysconfig/i18nutf-8 lt---gt GBK强制字符集export LC_ALLC查询静态主机名vi /etc/hosts最大连接/etc/security/limits.confgrub 开机启动项添加/etc/grub.conftitle ms-dosrootnoverify hd00chainloader 1别名alias监测命令watch查看 Linux 版本信息uname -acat /proc/versioncat /etc/issuelsb_release -a查看 cpu 信息more /proc/cpuinfo查看 cpu 型号和逻辑核心数cat /proc/cpuinfo grep name cut -f2 -d: uniq -ccpu 运行的位数getconf LONG_BIT物理 cpu 个数cat /proc/cpuinfo grep physical uniq -c结果大于 0 支持 64 位cat /proc/cpuinfo grep flags grep lm wc -l查看 cpu 是否支持虚拟化cat /proc/cpuinfogrep flagspae 支持半虚拟化 Intel VT 支持全虚拟化查看内存信息more /proc/meminfo查看全面硬件信息dmidecode查看服务器型号dmidecode grep quotProduct Namequot查看软 raid 信息cat /proc/mdstat查看硬 raid 信息cat /proc/scsi/scsi查看硬件信息lspci查看是否支持 raidlspcigrep RAID显示开机信息dmesg进程树pstree每隔一秒报告虚拟内存统计信息 9 次vmstat 1 9把 180 号进程的优先级加 1renice 1 180终止某个 PID 进程kill -9 PID指定三天后下午 5:00 执行/bin/lsat 5pm 3 days /bin/ls编辑周期任务crontab -e分钟 小时 天 月 星期 命令或脚本01 1-3/2 命令或脚本直接将命令写入周期任务echo quot40 7 2 /root/shquotgtgt/var/spool/cron/root查看自动周期性任务crontab -l删除自动周期性任务crontab -r禁止或允许用户使用周期任务cron.deny 和 cron.allow启动自动周期性服务service crond 启动停止重启状态gt是否打开了某个端口netstat -anlp grep 端口号查看监听netstat -anlpsudo 命令权限添加visudo用户 别名可用 allNOPASSWD:命令 1,命令 2wangming linuxfanNOPASSWD:/sbin/apache start/sbin/apache restartUserName ALLALL ALL制作补丁diff suzu.c suzu2.c gt sz.patch安装补丁patch suzu.c lt sz.patch显示打开指定文件的所有进程lsof 文件查看端口的进程lsof -i :32768显示消耗内存最多的 10 个运行中的进程,以内存使用量排序.cpu 3ps aux grep -v USER sort -nk 4 tail查看内核模块lsmodyum 扩展源http://download.fedoraproject.org/pub/epelwget http://download.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpmrpm -Uvh epel-release-5-4.noarch.rpm升级所有包版本依赖关系,系统版本内核都升级yum -y update升级指定的软件包yum -y update 软件包名不改变软件设置更新软件,系统版本升级,内核不改变yum -y upgradeyum 搜索相关包yum search mail会改变配置文件改变旧的依赖关系,改变系统版本dist-upgrade编辑启动项/boot/grub/grub.conf开机启动脚本顺序/etc/profile/etc/profile.d/.sb/bash_profile/.bashrc/etc/bashrc-------------------------------------------------------------------- top前五行是系统整体的统计信息。