linux 命令复习笔记一

1. 查找命令:find,which,whereis,locate
    find 用的最多,最慢。find /etc -name java  这里不在啰嗦了
    which是根据环境变量来的,并且是寻找可执行文件
    whereis 查linux的系统文件档案数据库
    locate 你得先updatedb 然后会在 /var/lib/slocate/slocate.db这个数据库给你所想要的。否则计算机是不给面子的。至于配置嘛在updatedb.conf里。
 2. 文件管理
   查看当前目录每个子目录大小du * -sm|sort -n,相当于windows的资源管理器按大小排列,比他方便的就是可以把文件夹也列出来
   输入输出的重定向,
   ls -l /affix/2012/RES/INDU/20120315/410448514.pdf  1>>~/affix1.log  2>>~/affix.log  1代表存在就存入affix1.log,2代表文件不存在的就存入affix.log
至于df -h,ls -n这些先不提了
3 . 基本的管线指令
   cut : cat /etc/passwd |cut -d ":" -f 1         ---d表示分隔符 -f表示后面接的第几个区块 -c接的第几个字符如:cat /etc/passwd |cut -c1-20 取1-20个字符
   wc: 统计:-l 多少行 -m:多少个字符 -w 多少字  如:arp |wc -l
   split:-b:以档案大小来划分,-l以行数来划分。方便分割,统计。
   tr: last |tr '[a-z]' '[A-Z]'将大小写转换
4.关于/etc/hosts.allow &/etc/hosts.deny
   这里不得不提/etc/rc.d/init.d/*这里面全是LINUX自启动的服务,其启动的参数由/etc/xinetd.conf控制。譬如我们要禁用某台机器登陆服务器,只需:
  vi /etc/hosts.deny 
     服务名:ip:deny就可以了。服务名的获取得从/etc/rc.d/init.d里查看或者netstat
5.shell脚本的加减乘除:
运算符号 代表意义
=                等于
!=             不等于
<              小于
>              大于
-eq            等于
-ne           不等于
-lt             小于
-gt            大于
-le            小于或等于
-ge           大于或等于
-a             双方都成立(and)
-o             单方成立(or)
-z             空字符串
-n             非空字符串
几个规则:
1. 在 [ ] 当中,只能有一个判别式;
2. 在 [ ] 与 [ ] 当中,可以使用 && 或 || 来组织判别式;
3. 每一个独立的组件之间『都需要有空格键来隔开』!
如:
#just for the shell if then else fi test
echo -e "\033[36;32m"
echo "Press Y to continue~"
read input
#这里一定注意空格问题
if [ $input = "Y" ] ; then
        echo "$input"
        echo "Script is running~~"
else
        echo "Stop!"
fi
6. Redhat linux版本查看
uname -a  -看内核和32 or 64bit
cat /etc/redhat-release --看redhat linux发行版本号,如redhat linux Update x
cat /proc/version   --和uname -a 差不多
7.忘记密码的处理
   7.1.在Grub引导程序中,在下面给出了一系列提示。有兴趣的朋友可以都去试验一下。我们这里按“e”键进入系统启动前的Grub配置。(如果你的系统引导程序是LILO,和Grub大体类似,请自行参照LILO给出的提示操作)

  7.2.然后我们选择中间那一项:“kernel /vmlinuz-2.4.20-8 ro root=LABEL=/”按“e”键进入编辑。

  7.3.在“LABEL=/”后面输入“空格+single”后回车。空格一定要记得输!

  7.4.然后选择中间那一项:“kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ single”,按“b”键启动单用户模式系统。

  7.5.如果你的系统前面出现“sh-3.0#”这样的提示符,那么恭喜你,你已经成功进入了单用户模式。

  7.6.在“sh-3.0#”后面输入“passwd root”后回车。出现了激动人心的输入新密码界面。

  7.7.输入新密码并再次确定后,你的root用户的密码就成功更改了。

  7.8.然后输入“reboot”命令,重启系统,下次登陆就可以用新密码来使用root账户了 
8. Terminal linux unknown

  1. export TERM=xterm
  2. 可將此行寫入 .bashrc 內, 或直接執行即可解決.

9 crontab 
     查看服务启动没有:
      ps -ef|grep cron
    查看所有用户的任务.
     linux :  /var/spool/cron/      crontab -l -u oracle   crontab -d -u oracle
    Aix:/usr/spool/cron/
    crontab书写規则

<minute> <hour> <day>     <month>      <week>    <command>
第1列      第2列          3             4            5                 6

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启lighttpd 。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启lighttpd 。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启lighttpd 。

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启lighttpd

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启lighttpd

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启lighttpd

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启lighttpd
10 history 让其显示命令的具体执行时间
HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S '
export HISTTIMEFORMAT
重新开机后会还原,可以写/etc/profile
10  tcpdump src 10.2.1.13 and dst 192.168.100.200 and port 8002 -s 3000 -vv -nn -w tcpdump.dmp
-s 指定包大小
-vv 详细输出
-nn 不解析端口
-w 写入磁盘文件

11 dstat 前提是你装了dstat包和传统的sysstat包不一样的是,他整合在一起的
-c, --cpu              enable cpu stats 显示cpu的情况
-d, --disk             enable disk stats 显示硬盘的情况
-l, --load             enable load stats 显示系统的负载情况
-m, --mem              enable memory stats 显示内存的情况
-n, --net              enable network stats 显示网络的情况
-p, --proc             enable process stats 显示进程的情况
-s, --swap             enable swap stats 显示swap的情况
-y, --sys              enable system stats 显示系统的情况
--output file          write CSV output to file 写到csv文件中
每二秒收集一次,默认为一秒
dstat -cdlmnpsy 2
12 iotop 为一 python编写的脚本,需要2.6.20以上内核和python 2.6以上。

13 设置及查看网卡速率mii-tool -v eth0 

ethtool -s eth0 speed 1000 -duplex full
14.vi 中的替换
用:替换1-4行的-     1,4s/-/:/g
sed -i 's/-/:/g'
15硬件信息查看
dmidecode -t processor
kudzu --probe --class=cpu

16 一个ftp下载并判断文件类容是否相同脚本
#DATE:2012-03-22 BY:CHENGXUEFENG
#!/bin/bash
 
export LANG=zh_CN.GBK
v_date=` date +%Y%m%d `
cd /sjxhq/dbf
rm -fr /sjxhq/dbf/*
/usr/bin/ftp -n<<!
open 218.249.44.106 1548
user user password
binary
lcd /sjxhq/dbf
prompt
mget *.dbf
close
bye
!
if [ -f sjshq.dbf ]
then
        #比较文件内容是否一样,不一样则返回differ,发出邮件
       v_string=`diff sjshq.dbf /sjxhq/dbf_bak/$v_date/sjshq.dbf|awk '{ print $6 } '`
        if [ "$v_string" != "differ" ]
        then
                echo ` date +%Y%m%d `  "sjshq.dbf 和昨天的文件相同,请核对! "|mailx -s "数据异常,请注意检查" -c "" -b "" test@126.com.cn
                rm -fr /sjxhq/dbf/*
        fi
else
        echo "文件获取失败"|mail -x "北京行情数据FTP服务器获取文件失败!" -c "" -b "" test@126.com.cn
fi
关于linux中的特殊符号参考:http://www.longunix.net/forum.php?mod=viewthread&tid=9600&from=qqgroup
查看linux版本uname -a,cat /etc/redhat-release,lsb_release -a,df -t,uname -a
 16 rpm -e -allmatches
当存在多个包的时候specifies multiple packages报这个错误这时-allmatches就可以用上了
17 linux 用解锁
usermod -U oracle
如果报Your account is locked. Maximum amount of failed attempts was reached.那就必须
pam_tally2  -u oracle -r

posted on 2010-06-02 17:40 snowhill 阅读(389) 评论(0)  编辑 收藏 引用 所属分类: 系统管理


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

公告

又一年...........

留言簿(3)

随笔分类(13)

文章分类(131)

文章档案(124)

c++

java

linux

oracle

常用软件

其他

网络配置

系统安全

音乐

搜索

最新评论

阅读排行榜