仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 849|回复: 8
打印 上一主题 下一主题

[shell编程] 来一发Linux Shell经常使用下令总结

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 20:22:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家来到仓酷云论坛!1.find
findpathname-options[-print-exec-ok]
让我们来看看该下令的参数:
pathnamefind下令所查找的目次路径。比方用.来暗示以后目次,用/来暗示体系根目次。
-printfind下令将婚配的文件输入到尺度输入。
-execfind下令对婚配的文件实行该参数所给出的shell下令。响应下令的情势为command{};,注重{}和;之间的空格,同时两个{}之间没有空格,
注重必定有分号开头。
0)-ok和-exec的感化不异,只不外以一种更加宁静的形式来实行该参数所给出的shell下令,在实行每个下令之前,城市给出提醒,让用户来断定是不是实行
find.-name"datafile"-ctime-1-execls-l{};找到文件名为datafile*,同时创立实践为1天以内的文件,然后显现他们的明细.
find.-name"datafile"-ctime-1-execrm-f{};找到文件名为datafile*,同时创立实践为1天以内的文件,然后删除他们.

find.-name"datafile"-ctime-1-okls-l{};这两个例子和下面的独一区分就是-ok会在每一个文件被实行下令时提醒用户,加倍宁静.
find.-name"datafile"-ctime-1-okrm-f{};

1)find.-name基于文件名查找,可是文件名的巨细写敏感.
find.-name"datafile*"

2)find.-iname基于文件名查找,可是文件名的巨细写不敏感.
find.-iname"datafile*"

3)find.-maxdepth2-namefred找出文件名为fred,个中find搜刮的目次深度为2(距以后目次),个中以后目次被视为第一层.

4)find.-perm644-maxdepth3-name"datafile*"(暗示权限为644的,搜刮的目次深度为3,名字为datafile*的文件)

5)find.-path"./rw"-prune-o-name"datafile*"列出一切不在./rw及其子目次下文件名为datafile*的文件。
find.-path"./dir*"列出一切切合dir*的目次及其目次的文件.
find.(-path"./d1"-o-path"./d2")-prune-o-name"datafile*"列出一切不在./d1和d2及其子目次下文件名为datafile*的文件。

6)find.-userydev找出一切属主用户为ydev的文件。
find.!-userydev找出一切属主用户不为ydev的文件,注重!和-user之间的空格。

7)find.-nouser找出一切没有属主用户的文件,换句话就是,主用户大概已被删除。

8)find.-groupydev找出一切属主用户组为ydev的文件。

9)find.-nogroup找出一切没有属主用户组的文件,换句话就是,主用户组大概已被删除。

10)find.-mtime-3[+3]找出修正数据工夫在3日以内[以外]的文件。
find.-mmin-3[+3]找出修正数据工夫在3分钟以内[以外]的文件。
find.-atime-3[+3]找出会见工夫在3日以内[以外]的文件。
find.-amin-3[+3]找出会见工夫在3分钟以内[以外]的文件。
find.-ctime-3[+3]找出修正形态工夫在3日以内[以外]的文件。
find.-cmin-3[+3]找出修正形态工夫在3分钟以内[以外]的文件。

11)find.-newereldest_file!-newernewest_file找出文件的变动工夫betweeneldest_fileandnewest_file。
find.-newerfile找出一切比file的变动工夫更新的文件
find.!-newerfile找出一切比file的变动工夫更老的文件

12)find.-typed找出文件范例为目次的文件。
find.!-typed找出文件范例为非目次的文件。
b-块装备文件。
d-目次。
c-字符装备文件。
p-管道文件。
l-标记链接文件。
f-一般文件。

13)find.-size[+/-]100[c/k/M/G]暗示文件的长度为即是[年夜于/小于]100块[字节/k/M/G]的文件。

14)find.-empty查找一切的空文件大概空目次.

15)find.-typef|xargsgrep"ABC"
利用xargs和-exec的区分是,-exec大概会为每一个搜刮出的file,启动一个新的历程实行-exec的操纵,而xargs都是在一个历程内完成,效力更高.

2.crontab:
文件格局以下(每一个列之间是利用空格分隔的):
第1列分钟1~59
第2列小时1~23(0暗示半夜)
第3列日1~31
第4列月1~12
第5列礼拜0~6(0暗示礼拜天)
第6列要运转的下令

分时日月礼拜要运转的下令

3021***/apps/bin/cleanup.sh
下面的例子暗示每晚的21:30运转/apps/bin目次下的cleanup.sh。
4541,10,22**/apps/bin/backup.sh
下面的例子暗示每个月1、10、22日的4:45运转/apps/bin目次下的backup.sh。
101**6,0/bin/find-name"core"-execrm{};
下面的例子暗示每周6、周日的1:10运转一个find下令。
0,3018-23***/apps/bin/dbcheck.sh
下面的例子暗示在天天18:00至23:00之间每隔30分钟运转/apps/bin目次下的dbcheck.sh。
023**6/apps/bin/qtrend.sh
下面的例子暗示每礼拜六的11:00pm运转/apps/bin目次下的qtrend.sh。

-u用户名。
-e编纂crontab文件。
-l列出crontab文件中的内容。
-r删除crontab文件。
体系将在/var/spool/cron/目次下主动保留名为<username>的cron实行剧本.
cron是准时完成的义务,在义务启动时,一样平常来说都是从头启动一个新的SHELL,因而当必要利用登录设置文件的信息,出格是情况变量时,长短常贫苦的.
一样平常这类成绩的利用***以下:
02***(su-USERNAME-c"exportLANG=en_US;/home/oracle/yb2.5.1/apps/admin/1.sh";)>/tmp/1.log2>&1
假如盘算实行多条语句,他们之间应利用分号举行支解.注:以上语句必需在root的帐户下实行.

3.nohup:
nohupcommand&
假如你正在运转一个历程,并且你以为在加入帐户时该历程还不会停止,那末可使用nohup下令。该下令能够在你加入帐户以后持续运转响应的历程。
Nohup就是不挂起的意义(nohangup)。

4.cut:
1)cut一样平常格局为:cut[options]file1file2
-clist指定剪切字符数。
-ffield指定剪切域数。
-d指定与空格和tab键分歧的域分开符。
-c用来指定剪切局限,以下所示:
-c1,5-7剪切第1个字符,然后是第5到第7个字符。
-c2-剪切第2个到最初一个字符
-c-5剪切最入手下手的到第5个字符
-c1-50剪切前50个字符。
-f格局与-c不异。
-f1,5剪切第1域,第5域。
-f1,10-12剪切第1域,第10域到第12域。
2)利用体例:
cut-d:-f3cut_test.txt(基于":"作为分开符,同时前往field3中的数据)*field从0入手下手盘算。
cut-d:-f1,3cut_test.txt(基于":"作为分开符,同时前往field1和3中的数据)
cut-d:-c1,5-10cut_test.txt(前往第1个和第5-10个字符)

5.sort:
1)对文件内容举行排序,缺省份割符为空格,假如自界说必要利用-t选择,如-t:
2)利用分开符支解后,第一个field为0,awk中为1
3)详细用法以下:
sort-t:sort_test.txt(缺省基于第一个field举行排序,field之间的分开符为":")
sort-t:-rsort_test.txt(缺省基于第一个field举行倒序排序,field之间的分开符为":")
sort-t:+1sort_test.txt(基于第二个field举行排序,field之间的分开符为":")
sort+3nsort_test.txt(基于第三个field举行排序,个中n选项提醒是举行"数值型"排序)
sort-usort_test.txt(往除文件中反复的行,同时基于整行举行排序)
sort-ooutput_file-t:+1.2[n]sort_text.txt(基于第二个field,同时从该field的第二个字符入手下手,这里n的感化也是"数值型"排序,并将了局输入到output_file中)
sort-t:-m+0filename1filename2(兼并两个文件以后在基于第一个field排序)

6.pgrep和pkill:

查找和杀逝世指定的历程,他们的选项和参数完整不异,这里只是先容pgrep
/>sleep100&
1000
/>sleep100&
1001

/>pgrepsleep
1000
1001
/>pgrep-d:sleep#-d界说多个历程之间的分开符,假如不界说则利用newline
1000:1001
/>pgrep-nsleep#-n暗示假如该步伐有多个历程,查找最新的.
1001
/>pgrep-osleep#-o暗示假如该步伐有多个历程,查找最老的.
1000
/>pgrep-Groot,oraclesleep#-G暗示历程的groupid在-G前面的组列表中的历程会被思索
1000
1001
/>pgrep-uroot,oraclesleep#-u暗示历程的effetiveuserid在-u前面的组列表中的历程会被思索
1000
1001
/>pgrep-Uroot,oraclesleep#-U暗示历程的realuserid在-u前面的组列表中的历程会被思索
1000
1001
/>pgrep-xsleep#-x暗示历程的名字必需完整婚配,以上的例子都可以局部婚配
1000
1001
/>pgrep-xsle

/>pgrep-lsleep#-l将不但打印pid,也打印历程名
1000sleep
1001sleep
/>pgrep-lfsleep#-f一样平常与-l适用,将打印历程的参数
1000sleep100
1001sleep100

/>pgrep-fsleep-d,|xargsps-fp
UIDPIDPPIDCSTIMETTYTIMECMD
root10002138006:11pts/500:00:00sleep1000
root10012138006:11pts/500:00:00sleep1000

7.fuser:
fuser-m/dev#列出一切和/dev装备有染的历程pid.
fusertestfile#列出和testfile有染的历程pid
fuser-utestfile#列出和testfile有染的历程pid和userid
fuser-ktestfile#杀逝世和testfile有染的历程pid



8.mount:
  怎样在unix上面mount一个windows上面的同享目次
mount-tsmbfs-ousername=USERNAME,password=PASSWORD//windowsIp/pub_directory/mountpoint
/>mkdir-p/mnt/win32
/>mount-ousername=administrator,password=1234//10.1.4.103/Mine/mnt/win32
/>umount/mnt/win32#卸载该mount.



9.netstat:
  -a暗示显现一切的形态
  -l则只是显现listen形态的,缺省只是显现connected
  -p显现使用步伐的名字
  -n显现ip、port和user等信息
  -t只显现TCP的毗连
  />netstat-apnt
  />netstat-lpnt#假如只是显现监听端口的形态,可使用该下令



10.tune2fs:
  调剂ext2/ext3文件体系特征的工具
  -l检察文件体系信息
  />tune2fs-l/dev/sda1#将会列出一切和该磁盘分区相干的数据信息,如Inode等。
  />tune2fs-l/dev/sda1|grep-i"blocksize"#检察以后文件体系的块儿尺寸
  />tune2fs-l/dev/sdb1|grep-i"mountcount"#检察mountcount挂载次数



11.开启或封闭Linux(iptables)防火墙
重启后永世性失效:
/>chkconfigiptableson#开启
/>chkconfigiptablesoff#封闭

立即失效,重启后复原:
/>serviceiptablesstart#开启
/>serviceiptablesstop#封闭


12.tar分卷紧缩和兼并
以每卷500M为例
/>tarcvzpf-somedir|split-d-b500m#tar分卷紧缩
/>catx*>mytarfile.tar.gz#tar多卷兼并




13.把man或info的信息存为文本文件
/>mantcsh|col-b>tcsh.txt
/>infotcsh-otcsh.txt-s


14.检察正在实行历程的线程数
/>ps-eo"argsnlwppidpcpu"


15.利用md5sum盘算文件的md5
/>md5sumtest.c
07af691360175a6808567e2b08a11724test.c

/>md5sumtest.c>hashfile
/>md5sumCchashfile#考证hashfile中包括的md5值和对应的文件,在实行该下令时是不是仍旧婚配,假如此时test.c被修正了,该下令将前往不婚配的告诫.


16.在ps下令中显现历程的完全的下令行参数
/>psauwwx

17.chkconfig:

1).编纂chkconfig操纵的Shell文件头。
#!/bin/bash
#
#chkconfig:23452080
#description:StartsandstopstheRedisServer
这个正文头十分主要,不然chkconfig下令没法辨认。个中2345暗示init启动的级别,即在2、3、4、5这四个级别中均启动该办事。20暗示该剧本启动的优先级,80暗示中断的优先级。这些能够在chkconfig的manpage中找到更加具体的申明。

2).编译Shell文件的内容:
case"$1"in
start)
#TODO:实行办事步伐的启动逻辑。
;;
stop)
#TODO:实行办事步伐的中断逻辑。
;;
restart)
;;
reload)
;;
condrestart)
;;
status)
;;
下面列出的case前提必不成少,假如的确没有就当作占位符放在那边便可,如上例。

3).增加和删除办事步伐:
#--add选项暗示增加新的办事步伐。
/>chkconfig--addredis_6379
#检察是不是删除或增加乐成
/>chkconfig|grepredis_6379
redis_63790:off1:off2:on3:on4:on5:on6:off
#--del选项暗示删除已有的办事步伐。
/>chkconfig--delredis_6379

欢迎大家来到仓酷云论坛!
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-16 14:53:52 | 只看该作者

来一发Linux Shell经常使用下令总结

写学习日记,这是学习历程的见证,同时我坚持认为是增强学习信念的法宝。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-24 15:19:15 | 只看该作者
任何一个叫做操作系统的东西都是这样子构成的:内核+用户界面+一般应用程序。
分手快乐 该用户已被删除
地板
发表于 2015-2-2 06:20:57 | 只看该作者
永中office 2004增强版安装只需要默认安装即可使用并操作大多与win系统雷同,打印机的配置和管理,记录光盘等。
不帅 该用户已被删除
5#
发表于 2015-2-7 18:38:28 | 只看该作者
请问谁有Linux的学习心得的吗?简单的说说?
再现理想 该用户已被删除
6#
发表于 2015-2-23 09:07:14 | 只看该作者
掌握在Linux系统中安装软件,在安装Linux工具盘后大致日常所需的软件都会有,一般网络提供下载的软件都会有安装说明。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-7 09:20:04 | 只看该作者
我学习Linux的心得体会 ,希望对大家的学习有所帮助,由于水平有限,本文难免有所欠缺,望请指正。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-15 00:12:17 | 只看该作者
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-21 18:30:09 | 只看该作者
熟读写基础知识,学得会不如学得牢。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 10:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表