Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx

上传人:b****2 文档编号:17658678 上传时间:2023-07-27 格式:DOCX 页数:17 大小:26.10KB
下载 相关 举报
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第1页
第1页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第2页
第2页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第3页
第3页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第4页
第4页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第5页
第5页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第6页
第6页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第7页
第7页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第8页
第8页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第9页
第9页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第10页
第10页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第11页
第11页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第12页
第12页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第13页
第13页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第14页
第14页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第15页
第15页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第16页
第16页 / 共17页
Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx

《Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx》由会员分享,可在线阅读,更多相关《Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx(17页珍藏版)》请在冰点文库上搜索。

Linux常用命令全集linuxShell脚本编程入门实例讲解详解.docx

Linux常用命令全集linuxShell脚本编程入门实例讲解详解

 

一,安装和登陆命令

1,进入图形界面startx

2,进入图形界面init5

3,进入字符界面init3

4,登陆login

5,关机poweroff

-p关闭机器的时候关闭电源

-n在关闭机器时不同步数据

-w不做关机的操作,只是把这个操作记录到日志里

-d不把关机的信息记录到日志文件里

-f不调用

6,关机重启shutdown

命令格式:

shutdown[选项]时间[信息]时间--是必要参数,一定要加,可以用

now,也可以用+5信息--在关机的时候给用户的信息

-t这个参数后面需要加数字,比如5,表示在发出关机信号5秒后开始关机

-k不做真正的关机,只是通知一下所有的用户.

-r重启计算机

-h关机后关闭电源

-f在重新启动的时候跳过fsck(磁盘检查程序)

-F重启时,忽略fsck程序(同-f一样)

-c取消已在执行的关机动作例:

#shutdown-knowjustkid#shutdown-hnowsystemshutdownnow

7,关机halt选项同poweroff一样

8,重启计算机reboot

9,mount挂载文件系统,

umount卸载文件系统挂载光盘#mount-tiso9660/dev/cdrom/mnt/cdrom或者#mount/mnt/cdrom卸载光盘#umount/mnt/cdrom退出光盘#eject送入光盘#eject-t挂载软盘#mount/mnt/floppy卸载软盘#umount/mnt/floppy挂载本地FAT32分区,并使挂载后显示中文#mount-tvfat-oiocharset=cp936/dev/hda1/mnt/win卸载#/umount/mnt/win挂载U盘或者移动硬盘#mount-oiocharset=utf8/dev/sda1/mnt/usb卸载#umount/mnt/usb如果本地语言环境不是utf8,而是gb18030,需使用下面的命令挂载#mount-oiocharset=gb2312/dev/sda1/mnt/usb挂载一个光盘镜像至本地/mnt/cdrom目录,

用下面的命令#mount-tiso9660-oloop/tmp/cd.iso/mnt/cdrom

10,字符界面下安装操作系统的命令linuxtext

11,选择不同方法安装操作系统的命令linuxaskmethod

二,图形化界面相关命令

1,系统设置setup

2,服务启动设置ntsysv

3,登陆设置gdmsetupgdmconfig

4,网络设置networkconfigthizconfig

5,音量控制gnome-volume-control

6,KDE控制中心kcontrol

7,KDE设置向导kpersonalizer

8,网络检测命令xmtr

三,信息显示命令

1,显示特定指令执行时所需消耗的时间及系统资源等资讯time

2,显示或设定系统的日期与时间date

若是不以加号作为开头,则表示要设定时间,而时间格式为MMDDhhmm[[CC]YY][.ss],其中MM为月份,DD为日,hh为小时,mm为分钟,CC为年份前两位数字,YY为年份后两位数字,ss为秒数#date081112552006.35

3,显示日历cal#cal-m#cal-s#cal2006#cal082006

4,uptime提供使用者下面的资讯,不需其他参数现在的时间系统开机运转到现在经过的时间连线的使用者数量最近一分钟,五分钟和十五分钟的系统负载参数:

-V显示版本资讯#uptime

5,last显示系统开机以来或是从每月初登入者的讯息#last

6,dmesg显示系统启动的信息

7,uname显示系统信息-m显示硬件型号-n显示主机名-r显示内核版本-S显示操作系统类型-V显示操作系统的版本-a显示全部信息

8,id显示真实和有效的UID和GID#id显示当前用户的id信息

9,hostname显示或设置系统的主机名-a显示主机的别名-d显示DNS域名-F从指定文件中读取主机名-i显示主机的IP地址

10,who或w显示在线登陆用户-q显示全部的登陆名和登陆数#w显示系统中当前用户的信息#wuserusername仅显示指定用户的信息11,whoami显示用户自己的身份

12,whois查询域名注册及IP地址相关信息#whois小技巧:

如果想注册一个域名,可以用whois工具查询一下是否有人注册.

13,whatis查看命令的解释#whatisls

14,whereis显示系统命令及其文档所在目录#whereisls

15,which显示系统命令所在目录#whichls

16,stat显示指定文件的相关信息(含节点内容)#stat-f/查看整个文件系统的情况

17,free显示当前内存和交换空间使用情况-b以字节为单位-m以MB为单位

18,du显示指定的文件或目录已使用的磁盘空间的总量

-a显示对所有文件的统计(包含子目录)

-b输出的结果一字节bytes为单位

-c只计算目录的总用量

-h以M为单位1024kb=1M-H以M为单位1000kb=1M

-s只显示目录使用空间的总和

19,df显示文件系统磁盘空间的使用情况

-h以1024kb=1M计算

-H以1000kb=1M计算

-t指定显示分区的类型

-i显示分区的inode使用情况

20,wc统计指定文件中的字节数,字数,行数,并将结果显示输出-c输出字节统计数-l输出换行符统计数-L输出最长的行的长度-w输出单词统计数

21,ls显示目录文件-a显示所有文件(包含隐藏文件)-l使用长格式显示-F以符号形式附加文件类别-R以树状结构显示目录内容-d查看目录属性-i显示每个文件的inode号-m所有项目以逗号隔开,并填满整行-h将列出文件的大小及人性化格式输出-t依照文件最后修改时间的顺序列出文件名--color彩色显示文件

22,cat显示文本文件内容-b显示文件内容的时候显示行数-n显示文件内容包括空行-s将多个空行合并成一个空行输出

23,tac反转显示文件内容,后面的行放在前面显示选项同上

24,head显示文本文件的前若干行-n(行数)显示文件的最后指定的行-b(字节数)显示文件最后字节数里的内容-q不输出文件头的内容-v输出文件头的内容

25,tail显示文本文件的后若干行选项同上

26,more或less分页显示文本文件内容

-s将多个空行压缩成一个空行

-p清楚屏幕后在显示+行数直接从给定的行数开始显示-数字规定每次显示多少行

27,cut显示每行从开头算起num1到num2的文字#catexampletest2thisistest1#cut-c0-6example##print开头算起前6个字元test2thisi

28,pwd显示当前工作目录

29,locale显示当前语言环境

30,fc-list列出系统字体

31,jobs查看当前终端,当前shell下的后台的进程

32,ps查看系统中的进程#psaux#ps-elf

33,pstree将所有行程以树状图显示

34,top查看系统中实时进程

35,set查看系统变量

36,export查看环境变量

37,man查看命令帮助信息

38,info查看命令帮助信息

39,help查看命令帮助信息

四,文件处理命令

1,file显示文件类型

2,mkdir创建目录-p依次创建目录(建立多级目录)-m指定目录的权限

3,grep在指定的文本文件中查找指定的字符串

4,dd转换及输出数据#ddif=/dev/hdaof=/dev/hdb硬盘对拷

5,find查找文件或目录-name根据指定的文件名进行查找例:

#find.-name"*.c"(将当前目录及其子目录下所有扩展名是c的文件列出)-type查找指定类型的文件

类型文件有:

l链接d目录f普通文件b块设备文件c字符设备文件ssocket(套接字文件)p管道(pipe)文件例:

#find~-typed-sizen[bc]查找n值大小的文件,默认单位是字节b=bitc=kb例:

#find~-size1500b#find~-size+1500b查找大于1.5M大小的文件#find~-size-1500b查找小于1.5M大小的文件-user<用户名>查找属于指定用户的文件#find/-usertest-group<用户组名>查找属于指定用户组的文件#find/-grouptest-newer<文件名>查找比文件更新的文件#find/-newer/home/httpd-cmin+n查找在过去n分钟以内(-)或以外(+)被修改过的文件#find~-cmin+20-ctime+n查找在过去n天以内(-)或以外(+)被修改过的文件#find~-ctime+20-atime+n查找在过去n天以内(-)或以外(+)被读取过的文件#find~-atime+20-amin+n查找在过去n分钟以内(-)或以外(+)被读取过的文件#find~-amin+20-linksn查找n个链接数的文件#find/home-links[2-5]

6,mv移动文件或目录,文件或目录改名

-i出现提示

-v显示进度

–f强制移动

-u只有源文件比目的文件新时才移动

7,diff比较并显示文件差异的部分

8,comm比较文件内容

9,ln建立文件之间的链接-s符号链接的选项-f强制建立链接-i出现提示-v显示操作信息

10,rm删除文件或目录-r递归删除-f强制删除-v删除时显示信息-i删除时会有提示确认11,rmdir删除空目录-p依次删除目录-v删除的时候显示信息

12,cp复制文件或目录-R递归复制整个目录里的内容-f强制复制-p复制完后保持目录的权限值-i复制时出现同名会有提示-v显示进度-l创建硬链接-u只有在目的文件比源文件旧时才复制

13,cd切换目录#cd回到用户的主目录#cd-回到用户的主目录#cd~回到用户的宿主目录#cd..转到上一级目录#cd/切换到根目录#cd.切换到当前目录

14,tar-f这个选项是一定要用的,表示使用归档文件-v显示进度-c建立一个新的tar文件-z调用gzip或者gunzip程序-j调用bzip2或者bunzip2程序-t显示tar打包文件里的内容-x解压缩tar文件-r追加一个或多个文件到已有的tar包中-u如果文件比打包文件中的新就替换打包中的文件-k在解开打包文件时保持原有的文件-C指定解包的目的目录-A将其他打包中的文件追加到一个打包文件中-M将一个包分成多个包,但必须配合-L参数一起使用(分包实现的过程比较麻烦)--get提取某个文件--remove-files打包以后删除文件-t进行测试解压缩,不会解压到当前目录格式:

tar[选项]生成打包文件名需打包的源文件

15,compress压缩命令,生成.z的文件

16,uncompress解压缩扩展名为.z的文件

17,zip压缩文件或目录

18,unzip解压缩扩展名为.zip的文件

19,gzip压缩命令(不支持对目录进行压缩),生成.gz的文件

20,gunzip或zcat解压缩.gz的文件

21,bzip2压缩命令,生成.bz2的文件

22,bunzip2解压缩命令

23,touch更改文件的时间标记或创建一个空文件

24,unlink删除软链接25,locate在系统中搜索包含字符串的文件

26,ldd列出与文件有关的分享函数库

五,系统管理相关命令

1,clear清楚界面

2,konsole打开命令终端

3,gnome-terminal打开命令终端

4,fdisk修改磁盘分区

m帮助

l打印已知分区

d删除一个分区

n新建一个新的分区

p打印当前分区表

w将新的分区表写入磁盘,并且退出

t改变一个分区的系统标识

q放弃保存并且退出例如:

#fdisk/dev/hda#fdisk-l

5,mkfs格式化磁盘工具键入mkfs后,按tab键两次,会显示出很多格式化工具

6,fsck单用户模式下,检测修复文件系统例如:

#fsck-j/dev/hda1注:

建议不要手动fsck,系统会自动调用

7,quota显示并限制用户的磁盘用量

8,quotacheck

-a根据/etc/mtab检查所有非网络文件系统(当带了-a参数以后,就不能再手动指定检查哪个分区了)

-v显示过程和结果

-u检查带有usrquota参数的分区

-g检查带有grpquota参数的分区

-c创建数据库aquota.usr和aquota.group

-M把所有分区强制以读写方式检查

-R检查除了根分区以外的所有分区#quotacheck-avugc

9,quotaon启动quota

-a打开所有磁盘配额

-v显示输出结果

-u指定基于用户的磁盘配额

-g指定打开基于组的磁盘配额

-p打印当前状态

10,quotaoff关闭quota选项同上

11,edquota配置限额

-u用户名

-g组名

-t设置宽限时间

12,repquota查看所有配额

13,at在指定的时间执行特定的命令

14,atq查询待执行的任务

15,atrm删除待执行的任务

16,crontab设置计划任务

17,lp打印文件

18,useradd新建账号

19,usermod修改账号设置

20,userdel删除账号

21,groupadd建立组

22,groupmod改变组标识符或名称

23,groupdel删除组

24,kill对程序下达信号或终止程序

25,nice以改过的优先级执行程序

26,renice调整正在执行程序的优先级

27,wget从指定的网址下载文件

28,md5sum计算并校验软件MD5码

29,mesg控制当前所用终端机的写入权限

30,wall广播信息

31,write传送信息给其他用户

32,lpq列出打印机队列的状态

33,lprm删除正在打印的作业

34,sleep时间暂停

35,chfn改变finger所显示的信息

36,chsh改变用户登陆系统时所使用的shell

六,网络操作相关命令

1,ifconfig设置或显示网络接口

2,ifup启用网络接口

3,ifdown关闭网络接口

4,ping传送ICMPecho的包,用来检查联机状态

5,netstat查询网络的当前状态

6,route显示并设置路由

7,traceroute追踪联机所经过的路由器

8,mtr是一个既具有ping功能,又具有traceroute功能的命令

8,xmtr是一个在Xwindows下执行的命令

9,tcpdump显示网络上TCP的联机状态

10,telnet远程联机程序

11,ftp文件传输

12,rlogin远程登陆主机

3,rcp远程复制文件或目录

14,ssh远程加密的联机

15,finger远端查询主机上的用户信息

16,mail收发邮件

17,host查询主机使用的域名

18,nslookup查询网络名称与地址的对应

七,系统安全相关命令

1,passwd修改用户密码

2,su切换并取代该用户的身份

3,sudo使用指定的用户权限执行程序

4,umask设置新建文件的权限屏蔽

5,chgrp改变文件或目录所属的组

6,chmod改变文件或目录的权限

7,chown改变文件或目录的拥有者或组

8,chattr改变文件属性

9,lsattr列出ext2上的文件属性

10,pswho

八,其它命令

1,bc计算器

2,xmms播放器

3,xine播放器

 

linuxShell(脚本)编程入门实例讲解详解

为什么要进行shell编程

在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。

Shell不仅仅是命令的收集,而且是一门非常棒的编程语言。

您可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。

下面,让我们一起来看看shell是如何工作的:

建立一个脚本

Linux中有好多中不同的shell,但是通常我们使用bash(bourneagainshell)进行shell编程,因为bash是免费的并且很容易使用。

所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在bash的大姐,bourneshell中运行)。

如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi等来编写我们的shell程序。

程序必须以下面的行开始(必须方在文件的第一行):

#!

/bin/sh

符号#!

用来告诉系统它后面的参数是用来执行该文件的程序。

在这个例子中我们使用/bin/sh来执行程序。

当编辑好脚本时,如果要执行该脚本,还必须使其可执行。

要使脚本可执行:

chmod+xfilename

然后,您可以通过输入:

./filename来执行您的脚本。

注释

在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。

我们真诚地建议您在程序中使用注释。

如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。

变量

在其他编程语言中您必须使用变量。

在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。

要赋值给一个变量,您可以这样写:

变量名=值

取出变量值可以加一个美元符号($)在变量前面:

#!

/bin/sh

#对变量赋值:

a="helloworld"

#现在打印变量a的内容:

echo"Ais:

"

echo$a

在您的编辑器中输入以上内容,然后将其保存为一个文件first。

之后执行chmod+xfirst。

使其可执行,最后输入./first执行该脚本。

这个脚本将会输出:

Ais:

  helloworld

有时候变量名很容易与其他文字混淆,比如:

num=2

  echo"thisisthe$numnd"

这并不会打印出"thisisthe2nd",而仅仅打印"thisisthe",因为shell会去搜索变量numnd的值,但是这个变量时没有值的。

可以使用花括号来告诉shell我们要打印的是num变量:

num=2

  echo"thisisthe$nd"

这将打印:

thisisthe2nd

有许多变量是系统自动设定的,这将在后面使用这些变量时进行讨论。

如果您需要处理数学表达式,那么您需要使用诸如expr等程序(见下面)。

除了一般的仅在程序内有效的shell变量以外,还有环境变量。

由export关键字处理过的变量叫做环境变量。

我们不对环境变量进行讨论,因为通常情况下仅仅在登录脚本中使用环境变量。

Shell命令和流程控制

在shell脚本中可以使用三类命令:

1)Unix命令:

虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。

这些命令通常是用来进行文件和文字操作的。

常用命令语法及功能:

echo"sometext":

将文字内容打印在屏幕上。

ls:

文件列表。

wc–lfilewc-wfilewc-cfile:

计算文件行数计算文件中的单词数计算文件中的字符数。

cpsourcefiledestfile:

文件拷贝。

mvoldnamenewname:

重命名文件或移动文件。

rmfile:

删除文件。

grep'pattern'file:

在文件内搜索字符串比如:

grep'searchstring'file.txt

cut-bcolnumfile:

指定欲显示的文件内容范围,并将它们输出到标准输出设备比如:

输出每行第5个到第9个字符cut–b5-9file.txt千万不要和cat命令混淆,这是两个完全不同的命令。

catfile.txt:

输出文件内容到标准输出设备(屏幕)上。

filesomefile:

得到文件类型。

readvar:

提示用户输入,并将输入赋值给变量。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2