unix下常用命令及脚本编写

合集下载

《UNIX常用命令大全》word版

《UNIX常用命令大全》word版

UNIX常用命令大全[分享]apropos用途:apropos查找使用说明的名称。

举例:apropos print(等价于man -k prink)。

arch用途:arch获得机器体系结构的描述信息。

举例:arch。

下面是arch输出的结果: sun4将这个命令与uname进行比较。

ash用途:ash是外壳,只用于某些系统。

举例:ash。

这个命令启动ash外壳的一个实例。

at用途:at用于确定命令执行的时刻。

举例:at 9:00am December 31。

awk用途:awk是一种模式扫描和执行语言。

举例:awk\'{print $1}\'file.txt。

这个命令执行后将打印出file.txt的第一个区域。

bash用途:bash是GNU Bourne-Again外壳。

举例:bash[options]。

这个命令启动bash外壳,它是一个增强的和sh兼容的外壳。

bash 的提示符为$。

biff用途:biff通知你是否收到了邮件。

举例:biffy。

这个命令叫biff通知你新邮件什么时候到达(注意,要想让biff工作,你必须同时运行 sendmail)。

cancel用途:cancel取消挂起的打印作业。

举例:cancel23。

这个命令取消23号打印作业。

cal用途:cal显示无格式文本日历。

举例:cal。

以下是命令执行后输出的列表: August 1998cat用途:cat将文件连接在一起并显示这些文件中的内容。

举例:cat myfile.txt。

这个命令执行后显示myfile.txt中的内容。

cc用途:cc是用于许多系统的C编译器。

举例:cc myfile.c -o myfile。

这个命令执行后对myfile.c源文件进行编译并输出一个名为myfile的可执行文件。

cd用途:cd用来改变当前目录。

举例:cd/usr/bin。

这个命令执行后将当前目录更改为/usr/bin。

用途:chfn用来改变finger信息。

(整理)Unix命令大全.

(整理)Unix命令大全.

Unix命令大全cat cdchmod chowncp cut名称:cat使用权限:所有使用者使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName说明:把档案串连接后传到基本输出(萤幕或加> fileName 到另一个档案)参数:-n 或--number 由1 开始对所有输出的行数编号-b 或--number-nonblank 和-n 相似,只不过对于空白行不编号-s 或--squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行-v 或--show-nonprinting范例:cat -n textfile1 > textfile2 把textfile1 的档案内容加上行号后输入textfile2 这个档案里cat -b textfile1 textfile2 >> textfile3 把textfile1 和textfile2 的档案内容加上行号(空白行不加)之后将内容附加到textfile3名称: cd使用权限: 所有使用者使用方式: cd [dirName]说明: 变换工作目录至dirName。

其中dirName 表示法可为绝对路径或相对路径。

若目录名称省略,则变换至使用者的home directory (也就是刚login 时所在的目录)。

另外,"~" 也表示为home directory 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录。

范例: 跳到/usr/bin/ :cd /usr/bin跳到自己的home directory :cd ~跳到目前目录的上上两层:cd ../..指令名称: chmod使用权限: 所有使用者使用方式: chmod [-cfvR] [--help] [--version] mode file...说明: Linux/Unix 的档案存取权限分为三级: 档案拥有者、群组、其他。

unix常见命令文档

unix常见命令文档

Unix常见命令练习文档1.vi命令vi是编辑文档命令,vi可以通过i,a,o进入编辑模式,i是在光标处进入编辑,a是在光标后进入编辑模式,o是在光标处下面添加一个空行。

退出编辑模式按esc键,此时回到命令模式下。

要退出命令模式输入’:’w—将全文内容保存至磁盘;w newfilename—将全文内容保存到指定的新文件中;wq—退出并保存;x—退出并保存;q!--退出但不保存。

Vi在编辑时还有一些其他命令:1.:r filename—从目标文件中输入文本到这个文件2.w—向前一个单词3.b—向后一个单词4.G—移动到文件的最后一行5.:n/nG—移动到第n行6.ctrl+f—向下滚一屏7.ctrl+d—向下滚半屏8.ctrl+b—向上滚一屏9.ctrl+u—向上滚半屏10.ctrl+l—刷新屏幕11.x—删除光标处字符12.dw—删除一个单词13.dd—删除一行14./string—向上查找string15.?string—向下查找string16.yy—指定要复制的行17.P—黏贴到光标所在的下一行18.:n1,n2 co n3—将n1到n2行的内容复制黏贴到n3行之后19.:n1,n2 m n3—将n1到n2行的内容剪切到n3行之后2.ps命令Ps –ef 命令可以查看系统当前正在运行的进程。

1.查看系统的所有进程Ps –ef | more2.查看指定的进程Ps –ef | grep name3.grep命令Grep命令用来搜索指定目录下的文件中包含xxxxx的文件,例如:grep string /111/222/333/* 命令含义为在/111/222/333目录下的所有文件中包含string字段的所有文件全部列出来,如果也收索当前目录下的的子目录使用:grep –r如果忽略当前目录下的子目录使用:grep –d skip。

4.wc命令Wc命令为查询文件中的容量信息例如:Wc -【l|m|w|c】 filenameL代表行数M代表字符数C代表字节数W代表单词数5.df命令Df命令用来查看系统使用磁盘的情形例如:Df –h6.du命令Du命令用来查看当前目录下的所有文件和目录的占用磁盘空间的大小7.find命令1.find . –name hello –print//意思为在当前目录下查找名字为hello的文件并打印输出在屏幕上2.find . –ctime|-atime|-mtime +7 –print//意思为在当前目录下查找7天内未被改动、被访问、被改动的文件,输出并打印在屏幕上。

Unix的Shell脚本编程

Unix的Shell脚本编程

Unix的Shell脚本编程Unix是一种非常流行的操作系统,其发展至今已有几十年的历史。

它拥有高度的可扩展性和灵活性,以及完整的命令行环境。

这使得Unix成为了许多计算机话题的重要领域之一,其中Shell 脚本编程是Unix中最重要的部分之一。

Shell脚本是一种编写在Shell(命令行环境)下的脚本语言,它使用了Unix操作系统提供的各种命令和工具。

Shell脚本可以执行许多操作,包括文件操作、进程管理、文本处理和网络编程等等。

它还可以被用来编写交互式脚本或自动化脚本,以方便用户进行各种任务。

Shell脚本编程初学者需要掌握以下几个方面:1. 脚本文件的创建首先,这个脚本文件需要被创建,因此你需要一个文本编辑器来编写这个文件。

在Unix中,许多文本编辑器都可以用于编写Shell脚本,例如vim、nano和emacs等等。

最常见的脚本文件扩展名是.sh,但这并不是强制性的。

无论你使用什么扩展名,它都只是一个普通的文本文件,且必须开始以#!/bin/bash开头,这是告诉系统要使用哪个Shell去执行这个脚本。

2. 命令行参数的处理Shell脚本最常见的任务之一是处理和解析命令行参数。

Shell 提供了一些内置变量,例如$1、$2、$3等用于接收传递给脚本的参数。

例如,如果你运行以下命令:./my_script.sh arg1 arg2 arg3那么,在my_script.sh脚本中,你可以使用$1来获取arg1的值,使用$2来获取arg2的值,以此类推。

3. 流程控制Shell脚本中的流程控制是完成各种任务的关键。

基本的流程控制结构有if-else语句、for循环、while循环和case语句。

这些结构可以用于决定何时执行代码块、重复执行代码块或根据不同的条件执行代码块。

4. 函数和变量函数和变量是许多Shell脚本编程任务中都不可或缺的元素。

函数是自包含的代码块,可以被多次调用。

变量是存储数据的容器,可以用于存储文本、数字和数组等各种数据类型。

unix环境下常用工作脚本大全

unix环境下常用工作脚本大全

工作中常用的脚本Lyman V an原创(mail:flyfan05@)1,备份脚本:主要是date的格式化,以及常用的cp拷贝。

#!/usr/bin/shbak_date=$(date +%Y%m%d)echo "==========vanips bak date is $bak_date================"echo "+++++++++++++++bak vanips is start...+++++++++"#ll /test2/vanips/bak/;rm -rf /test2/vanips/bak/vanips.bak.$bak_datemkdir -p /test2/vanips/bak/vanips.bak.$bak_dateecho "========copy vanips_run is start...============"mkdir -p /test2/vanips/bak/vanips.bak.$bak_date/vanips_runecho "========copy vanips_run is ok=================="cd /test2/vanips/bak/vanips.bak.$bak_date;touch 这是备份文件echo "+++++++++++++++bak vanips is end+++++++++"2,ftp文件传输ftp -n <<VAN ##这个是分段符号open $IP ##远程主机的ip地址user $v_username $v_username ##远程主机的用户名和密码bin ## 以二进制传输prompt ## 关闭对话框lcd $v_localpath ##本地目录cd $v_remotepath ## 远程主机目录mput $v_resname ## 需要传输的文件名称byeVAN3,远程登陆主要用expect脚本来实现交互,下面两个脚本分别实现了rlogin 远程登陆和ssh远程登陆#!/home/bin/expectset v_host [lindex $argv 0]set v_username [lindex $argv 1]set v_password [lindex $argv 2]set v_command1 [lindex $argv 3]#延时1s执行以下命令set timeout 1spawn rlogin $v_hostexpect "Password: "exec sleep 1send "$v_password"send "\r"expect "*$v_username%"exec sleep 1send "$v_command1"send "\r"set timeout 300expect "*$v_username%"#!/test1/release/expect/bin/expect# useage :ssh_host_exec_command [host_ip] [user] [password] [system_name] [host_index] [command]set v_hostip [lindex $argv 0]set v_username [lindex $argv 1]set v_password [lindex $argv 2]set v_systemname [lindex $argv 3]set v_hostindex [lindex $argv 4]set v_command [lindex $argv 5]#延时4s执行以下命令set timeout 4spawn ssh -l $v_username $v_hostipexpect "*assword:"exec sleep 1send "$v_password"send "\r"expect "*UserName):"exec sleep 1send "$v_systemname"send "\r"expect "*Hostname):"exec sleep 1send "$v_hostindex"send "\r"expect "*$v_systemname%"exec sleep 1send "$v_command"send "\r"4,用户界面简单的echo实现打印user_interface(){echo " \n *****************************************"echo " * 请选择序号或名称: *"echo " * \t 1: vanbps *"echo " * \t 2: vancbs *"echo " * \t 3: ccsuser *"echo " * \t 4: vanips *"echo " * \t 5: vanupintf *"echo " * \t 6: mutil_user *"echo " * \t 0: exit *"echo " *****************************************\n"}5,用户问答式交互echo "\n================是否继续?(y/n):\c====================" read ANScase $ANS iny|Y|yes|YES|Yes)do_deploy;;*)echo "取消!!!";;esac6,数据库操作用sqlplus实现# get_obj_detvanl [object_name] : 获取。

UNIX常用命令

UNIX常用命令
(2) 结束谈话用oo(结束并退出)
write命令检查用户是否在线,如果不在线则无法进行交谈
21======mesg 消息开关命令;用于查询和开关本中端的消息接收状态(避免工作时别人打扰)
格式:mesg [-y] [-n]
% mesg ====>查询本终端当前的消息接收状态
(3) <ctrl+d> 进程,任务的结束
(4) <ctrl+s>
(5) <ctrl+q>
(6) <ctrl+u>
shell的种类,提示符和退出命令
shell 基本的功能=======〉命令解释器(命令解释程序)
每一个以登陆进入系统的用户都有一个独立的shell程序与其对应,解释用户输入的键盘命令
r-x--->同组人权限
r-x--->其他人权限(r ==可读,w ==可写,x ==可执行)
4 ---->链接号
nobody->拥有者
1024--->文件大小
is y ====>可以接收消息
% mesg n====> 设置关闭状太
% mesg y====> 设置打开状态
22======talk 双向通讯命令(与write命令相似,talk命令也是与系统中已经登陆的其他用户通信,
但是talk 通讯双方都必须向对方发出talk 命令才能进行通信)
(6) n 显示下一个邮件
(7) q 退出mail,把未删除的邮件保存到个人邮箱中
(8) R 回复邮件
(9) ! 执行shell命令
(10)? 显示mail的内部命令

UNIX操作系统常用命令

UNIX操作系统常用命令
:q:退出
:q!:不保存退出
:w:保存文件
:x:保存并退出
/字符串;查找字符串
2、more
说明:按页查看文本文件
用法:more 文件名
3、cat
说明:查看文本文件
用法:cat 文件名
五、系统状态命令
1、env
说明:说明:查看系统内存、CPU等的使用情况,只在HP主机上有效。
2、gzip
说明:将一个文件压缩归档
用法:gzip 文件名
3、gunzip
说明:将一个文件解压缩
用法:gunzip 文件名
四、文件编辑命令
1、vi
说明:文本文件编辑器
用法:vi编辑命令说明
(1)、三种模式:命令模式、文本输入模式、命令项模式,用Esc键在模式间切换
(2)、命令模式下的命令:
说明:在指定的文件中查找指定的字符串
用法:grep 字符串 文件名
8、wc
说明:计算一个文件的行数、单词数和字符数
用法:wc 文件名
三、文件归档命令
1、tar
说明:将一个文件系统或一个目录归档为一个文件
用法:
归档:tar cvf 文件名 目录名
还原:tar xvf 文件名
八、系统相关命令
1、passwd
说明:修改当前用户的密码
用法:passwd
九、帮助命令
1、man
说明:查看帮助信息
用法:man 命令名

3、cp
说明:复制文件
用法:cp 源文件名 目标文件名
4、rm
说明:删除文件
用法:rm 文件名

UNIX操作系统命令大全

UNIX操作系统命令大全

UNIX系统操作命令大全UNIX系统操作命令第一章登录和退出用户在登录前,首先要向系统管理员申请一个用户注册名,不论用户从哪台计算机登录到ITPNET上都将访问相同的文件系统。

1.1 登录当屏幕上出现Login提示符时,用户可以输入自己的用户注册名,并按回车键。

若有口令,系统将提示用户输入密码,并按回车键,口令输入正确后,用户登录成功。

这时,屏幕上会显示出一些信息和命令提示符。

如:Login: guest [Enter]passwd: ****** [Enter]sun%注: 用户名要用小写字母输入,UNIX系统区分大小写字母。

[hide]1.2 退出当用户准备退出自己的计算机帐号时,可在系统示符下输入logout或exit或按[Ctrl-D]。

当屏幕出现Login时,用户可以安全地离开计算机了。

如:sun% logout [Enter]Login:1.3 修改口令为了防止他人使用自己的帐号,在你首次登录后,请用passwd命令修改只有本人知道的保密口令,口令通常由此可6到8个字母数字组成。

如:sun% passwd[Enter]Old Passwd: ******New Passwd: ******update 更新磁盘 val SCCS实用程序 vc SCCS实用程序 vi 全屏幕编辑器 volcopy 文件系统的文字拷贝 wait 等待所有字进程结束 while 循环语句 who 显示谁在使用系统 whod o 显示哪些用户在做什么 write 和另一用户直接对话 xargs 建立参数表并执行命令 yacc 语法分析程序生成器;)cl注:当你退出系统再次登录时,就要使用新的口令。

第二章目录操作命令2.1 显示目录命令:pwd(print working directory)格式:pwd功能:显示出用户当前工作目录的全路径名。

例如:% pwd2.2 建立目录命令:mkdir(make directory)格式:mkdir directory_name功能:建立新目录例如:% mkdir directory2.3 改变目录命令:cd(change directory)格式:cd directory_name功能:改变当前工作目录注释:目录名选项有:(1) 目录名,转到当前目录下的子目录。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

-ok Command 和 -exec 表达式一样,除了 find 命令询问您是否应当启动 指定 的命令。一个肯定的响应会启动这个命令。指定命令的末尾必须 加上括在引号中的分号或 \;(反斜杠转义分号)。
-atime n 查找访问时间在n天之内的文件。 -ctime n 查找创建时间在n天之内的文件。 -mtime n 查找修改时间在n天之内的文件。 -size nc 查找大小为n字节的文件;
awk命令
语法:awk [ -F Ere ] [ -v Assignment ] ... { -f ProgramFile | 'Program' } [ [ File ... | Assignment ... ] ] ...
-f ProgramFile 从 ProgramFile 变量指定的文件获取 awk 命令的指令。
-n 禁止所有正常地写到标准输出的信息。
sed子命令
a\ 在当前行后面加入一行文本。 b lable 分支到脚本中带有标记的地方,如果分支不存在则分支到脚本的末 尾。 c\ 用新的文本改变本行的文本。 d 从模板块(Pattern space)位置删除行。 D 删除模板块的第一行。 i\ 在当前行上面插入文本。 h 拷贝模板块的内容到内存中的缓冲区。
ls 命令
drwxr-xr-x -rw-r--r-2 root 1 root other other 512 23 Oct 20 2000 mytemp Dec 20 16:06 a.txt
文件 类型 文件 权限
属主 组 链接 数
文件 大小
文件 创建 日期
时间
文件 名
我们可以使用命令“ls -l”来得到这张 列表,其中选项“-l”表示以长格式列出文件信息。
awk命令பைடு நூலகம்
tolower( String) 返回 String 参数指定的字符串大写字符将更改为小写。 toupper( String) 返回 String 参数指定的字符串小写字符将更改为 大写。 split(String,A,[Ere]) 将 String 参数指定的参数分割为数组元素 A[1], A[2], . . ., A[n],并返回 n 变量的值。
Unix下常用命令及SHELL脚本介绍
常用命令使用及脚本编写
作者:肖国如
为何要写脚本
Shell 脚本的用途
数据统计分析 进程实时监控 … 小程序的替身
Shell 脚本的特点
当要反复使用一个或 连续一组命令时,可 以用shell脚本很方便 的将它们全部执行
添加和修改逻 辑只需要简单 的保存文件
简单、快速
awk命令
sub( Ere, Repl, [ In ]) 用 Repl 参数指定的字符串替换 In 参数指定的字符串 中的由 Ere 参数指定的扩展正则表达式的第一个具体值。sub 函数返回替 换的数量。 match(String,Ere) 在 String 参数指定的字符串(Ere 参数指定的扩展正则 表达式出现在其中)中返回位置(字符形式),从 1 开始编号,或如果Ere 参数不出现,则返回 0(零)。 printf 语句打开的或调用 getline 函数打开的文件或管道。如果文件或管道 成功关闭,则返回 0;其它情况下返回非零值。如果打算写一个文件,并稍 后在同一个程序中读取文件,则 close 语句是必需的。 system(Command) 执行 Command 参数指定的命令,并返回退出状态。 等同于 system 子例程。 Expression | getline [ Variable] 从来自 Expression 参数指定的命令的输出 中通过管道传送的流中读取一个输入记录,并将该记录的值指定给 Variable 参数指定的变量。
sed命令
语法:sed [ -n ] Script [ File ... ] 语法:sed [ -n ] [ -e Script ] ... [ -f ScriptFile ] ... [ File ... ] -e Script 使用 Script 变量作为编辑脚本。
-f ScriptFile 使用 ScriptFile 变量作为编辑脚本源文件。
不需要 编译
灵活 高效
不担心性能
常用命令介绍
正则表达式介绍 脚本编写介绍
常用命令介绍
正则表达式介绍 脚本编写介绍
查看5G大小日志文件中的9点到11点时间段的信息
统计某个较大话单文件中各种类型话单条数
每天下午17点重启某一进程
含有大量文件的目录下找出文件创建时间在10到11点的文件
5
awk find ls ps
-E 列出文件的保留空间、固定范围大小和范围分配标志信息。使用该标志 时, 必须指定 -l 标志。 -t 按照最近一次修改时间(最近的最先)而不是名称排序。 -1 强制输出为每行一项格式。当输出没有定向到终端时,此为缺省值。 -l (L 的小写)显示方式、链接数目、所有者、组、大小(按字节)和每个 文 件最近一次修改时间。
awk命令
计算54*334 echo "0"|awk '{print 54*334}' 目录下有数百个文件名为.xml的文件,修改文件名.xml_bak ls *.xml|awk '{printf "mv %s %s_bak\n",$0,$0}'|sh 目录下有".txt",".xml",".cfg",统计各种类型的文件数 ls *.*|awk '{len=length($0);sf=substr($0,len-3,3);d[sf]+=1;}END{for(i in d) print i,d[i]}' ls *.*|awk '{len=split($0,A,".");d[A[len]]+=1;}END{for(i in d) print i,d[i]}'
awk命令
统计文件dr_gsm.dat行数 awk 'END {print NR}' dr_gsm.dat 查看文件dr_gsm.dat第5行的记录数,以";"分割 awk -F";" '{if(NR==5) print NF}' dr_gsm.dat 文件dr_gsm.dat字段以":"分割,输出第5列含有字串"running"的行 awk -F":" '{if($5~/running/) print $0}' dr_gsm.dat 输出文件a.txt,b.txt,c.txt 每个文件的第一行 awk 'NR>0{if(FNR==1) print $0}' a.txt b.txt c.txt 将字符串"a;b;c;d;e;f"的分割符替换成"|" echo "a;b;c;d;e;f"|awk -F";" '{OFS="|"} {print $0}'
find命令
找出当前目录下文件名字“t.txt"的文件 find ./ -name "t.txt" -print 找出当前目录下180天以前的文件 find ./ -type f -a -mtime +180 -print 找出当前目录下大小小于1024字节的文件
find ./ -type f -a -size -1024c -print
sed split xargs cat
5
sort
uniq more
cut
ls命令
-m 使用流输出格式(逗号分隔系列)。 -a 列出目录中所有项,包括以 .(点)开始的项。
-d 仅仅显示指定目录信息。目录和文件一样处理,这在当使用 -l 标志获取 目录状态时非常有用。 -e 显示方式(包括安全信息)、链接数目、所有者、组、大小(按字节)、 最近修改时间和每个文件名称。如果文件是特殊文件,大小字段包含主要 和次要设备数目。
H 追加模板块的内容到内存中的缓冲区。
sed子命令
s/re/string 用string替换正则表达式re。 ! 表示后面的命令对所有没有被选定的行发生作用。
r file 从file中读行。 q 退出Sed。 P(大写) 打印模板块的第一行。 p 打印模板块的行。
N 追加下一个输入行到模板块后面并在二者间嵌入一个新行,改变当前行 号码。 n 读取下一个输入行,用下一个命令处理新的行而不是用第一个命令。
substr(String, M, [ N ]) 返回具有 N 参数指定的字符数量子串。
length [(String)] 返回 String 参数指定的字符串的长度(字符形式)。如果 未给出 String 参数,则返回整个记录的长度($0 记录变量)。 index( String1, String2) 在由 String1 参数指定的字符串(其中有出现 String2 指定的参数)中,返回位置,从 1 开始编号。如果 String2 参数不 在 String1 参数中出现,则返回 0(零)。 gsub( Ere, Repl, [ In ]) 除了正则表达式所有具体值被替代这点,它和 sub 函数完全一样地执行。
找出当前目录下所有目录名为2013年6月日期的目录 find ./ -type d -print|grep "201306[0-9]\{2\}$" 找出当前目录比t.txt文件新的文件 find ./ -type f -a -newer "t.txt" -print
find命令
在./logs目录中查找更改时间在5日以前的文件并删除它们 find ./logs/ -type f -a -mtime +5 -exec rm {} \; 在$HOME/jfdata/bak/有30万个文件,需要移到/data2/bak/下备份 find $HOME/jfdata/bak/ -type f -print|xargs -n 5 -I {} mv {} /data2/bak/
相关文档
最新文档