str exit 1filen=${#str}while [ $len -ge 0 ]dom=${str:$len:1}((len--))res=$"og:type" content="webpage"> str exit 1filen=${#str}while [ $len -ge 0 ]dom=${str:$len:1}((len--))res=$" /> str exit 1filen=${#str}while [ $len -ge 0 ]dom=${str:$len:1}((len--))res=$"> linux编写shell脚本,按反向输出命令行中给出的参数._系统运维_内存溢出

阅读 8

linux编写shell脚本,按反向输出命令行中给出的参数.,第1张

#!/bin/sh

str=$1

if [ -z $1 ]then

echo usage $0 str

exit 1

fi

len=${#str}

while [ $len -ge 0 ]do

m=${str:$len:1}

((len--))

res=$res$m

done

echo $reslinux常用命令

(基础)

1. man 对你熟悉或不熟悉的命令提供帮助解释

eg:man ls 就可以查看ls相关的用法

注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。2. ls 查看目录或者文件

的属*,列举出任一目录下面的文件

eg: ls /usr/man

ls -l

a.d表示目录(directory),如果是一个”-”表示是文件,如果是l则表示是一个连接文件(link)

b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

3. cp 拷贝文件

eg: cp filename1 filename2 //把filename1拷贝成filename2

cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c

4. rm 删除文件和目录

eg: rm 1.c //将1.c这个文件删除

5. mv 移走目录或者改文件名

eg: mv filename1 filename2 //将filename1 改名为filename2

mv qib.tgz ../qib.tgz //移到上一级目录

6. cd 改变当前目录 pwd 查看当前所在目录完整路径

eg: pwd //查看当前所在目录路径

cd netseek //进入netseek这个目录

cd //退出当前目录

7. cat,more命令

将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示

egcat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。

cat 1.c 或more 1.c //都可以查看里面的内容。

gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。

eg: chmod u+x filenmame //只想给自己运行,别人只能读

//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 r 表可读,w 表可写,x 表可以运行

chmod g+x filename //同组的人来执行

9. clear,date命令

clear:清屏,相当与DOS下的clsdate:显示当前时间。

10. mount 加载一个硬件设备

用法:mount [参数] 要加载的设备 载入点

eg: mount /dev/cdrom

cd /mnt/cdrom //进入光盘目录

11. su 在不退出登陆的情况下,切换到另外一个人的身份

用法: su -l 用户名(如果用户名缺省,则切换到root状态)

eg:su -l netseek (切换到netseek这个用户,将提示输入密码)

12.whoami,whereis,which,id

//whoami:确认自己身份

//whereis:查询命令所在目录以及帮助文档所在目录

//which:查询该命令所在目录(类似whereis)

//id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)

eg: whoami //显示你自已登陆的用户名

whereis bin 显示bin所在的目录,将显示为:/usr/local/bin

which bin

13. grep,find

grep:文本内容搜索find:文件或者目录名以及权限属主等匹配搜索

eg: grep success */*查找当前目录下面所有文件里面含有success字符的文件

14. kill 可以杀死某个正在进行或者已经是dest状态的进程

egps ax

15. passwd 可以设置口令

16. history 用户用过的命令

eg: history //可以显示用户过去使用的命令

17. !! 执行最近一次的命令

18. mkdir命令

eg: mkdir netseek //创建netseek这个目录

19. tar 解压命令

eg: tar -zxvf nmap-3.45.tgz //将这个解压到nmap-3.45这个目录里

20. finger 可以让使用者查询一些其他使用者的资料

eg: finger //查看所用用户的使用资料

finger root //查看root的资料
基本linux命令有哪些呢?1、ls命令就是 list 的缩写,通过 ls 命令不仅可以查看 linux 文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。常用参数搭配:ls -a 列出目录所有文件,包含以.开始的隐藏文件ls -A 列出除.及..的其它文件ls -r 反序排列ls -t 以文件修改时间排序ls -S 以文件大小排序ls -h 以易读大小显示ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来实例:(1) 按易读方式按时间反序排序,并显示文件详细信息ls -lhrt(2) 按大小反序显示文件详细信息ls -lrS(3)列出当前目录中所有以"t"开头的目录的详细内容ls -l t*(4) 列出文件绝对路径(不包含隐藏文件)ls | sed "s:^:`pwd`/:"(5) 列出文件绝对路径(包含隐藏文件)find $pwd -maxdepth 1 | xargs ls -ld2、cd 命令cd(changeDirectory) 命令语法:cd [目录名]说明:切换当前目录至 dirName。实例:(1)进入要目录cd /(2)进入 "home" 目录cd ~(3)进入上一次工作路径cd -(4)把上个命令的参数作为cd参数使用。cd !$3、pwd 命令pwd 命令用于查看当前工作目录路径。实例:(1)查看当前路径pwd(2)查看软链接的实际路径pwd -P4、mkdir 命令mkdir 命令用于创建文件夹。可用选项:-m: 对新建目录设置存取权限,也可以用 chmod 命令设置-p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录。实例:(1)当前工作目录下创建名为 t的文件夹mkdir t(2)在 tmp 目录下创建路径为 test/t1/t 的目录,若不存在,则创建:mkdir -p /tmp/test/t1/t5、rm 命令删除一个目录中的一个或多个文件或目录,如果没有使用 -r 选项,则 rm 不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。rm [选项] 文件…实例:(1)删除任何 .log 文件,删除前逐一询问确认:rm -i *.log(2)删除 test 子目录及子目录中所有档案删除,并且不用一一确认:rm -rf test(3)删除以 -f 开头的文件rm -- -f*6、rmdir 命令从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限。注意:不能删除非空目录实例:(1)当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除:rmdir -p parent/child/child117、mv 命令移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。实例:(1)将文件 test.log 重命名为 test1.txtmv test.log test1.txt(2)将文件 log1.txt,log2.txt,log3.txt 移动到根的 test3 目录中mv llog1.txt log2.txt log3.txt /test3(3)将文件 file1 改名为 file2,如果 file2 已经存在,则询问是否覆盖mv -i log1.txt log2.txt(4)移动当前文件夹下的所有文件到上一级目录mv * ../8、cp 命令将源文件复制至目标文件,或将多个源文件复制至目标目录。注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中,如果不加 -i 参数,则不会提示,而是直接覆盖!-i 提示-r 复制目录及目录内所有项目-a 复制的文件与原文件时间一样实例:(1)复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖。cp -ai a.txt test(2)为 a.txt 建议一个链接(快捷方式)cp -s a.txt link_a.txt9、cat 命令cat 主要有三大功能:1.一次显示整个文件:cat filename2.从键盘创建一个文件:cat >filename只能创建新文件,不能编辑已有文件。3.将几个文件合并为一个文件:cat file1 file2 >file-b 对非空输出行号-n 输出所有行号实例:(1)把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里cat -n log2012.log log2013.log(2)把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里cat -b log2012.log log2013.log log.log(3)使用 here doc 生成新文件cat >log.txt <<EOF>Hello>World>PWD=$(pwd)>EOFls -l log.txtcat log.txtHelloWorldPWD=/opt/soft/test(4)反向列示tac log.txtPWD=/opt/soft/testWorldHello10、more 命令功能类似于 cat, more 会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示。命令参数:+n 从笫 n 行开始显示-n 定义屏幕大小为n行+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示 -c 从顶部清屏,然后显示-d 提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能-l忽略Ctrl+l(换页)字符-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似-s 把连续的多个空行显示为一行-u 把文件内容中的下画线去掉常用 *** 作命令:Enter向下 n 行,需要定义。默认为 1 行Ctrl+F 向下滚动一屏空格键 向下滚动一屏Ctrl+B 返回上一屏= 输出当前行的行号:f 输出文件名和当前行的行号V 调用vi编辑器!命令 调用Shell,并执行命令q 退出more实例:(1)显示文件中从第3行起的内容more +3 text.txt(2)在所列出文件目录详细信息,借助管道使每次显示 5 行ls -l | more -5按空格显示下 5 行。11、less 命令less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。常用命令参数:-i 忽略搜索时的大小写-N 显示每行的行号-o <文件名>将less 输出的内容在指定文件中保存起来-s 显示连续空行为一行/字符串:向下搜索“字符串”的功能?字符串:向上搜索“字符串”的功能n:重复前一个搜索(与 / 或 ? 有关)N:反向重复前一个搜索(与 / 或 ? 有关)-x <数字>将“tab”键显示为规定的数字空格b 向后翻一页d 向后翻半页h 显示帮助界面Q 退出less 命令u 向前滚动半页y 向前滚动一行空格键 滚动一行回车键 滚动一页[pagedown]: 向下翻动一页[pageup]: 向上翻动一页实例:(1)ps 查看进程信息并通过 less 分页显示ps -aux | less -N(2)查看多个文件less 1.log 2.log可以使用 n 查看下一个,使用 p 查看前一个。12、head 命令head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行。常用参数:-n<行数>显示的行数(行数为复数表示从最后向前数)实例:(1)显示 1.log 文件中前 20 行head 1.log -n 20(2)显示 1.log 文件前 20 字节head -c 20 log2014.log(3)显示 t.log最后 10 行head -n -10 t.log13、tail 命令用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。常用参数:-f 循环读取(常用于查看递增的日志文件)-n<行数>显示行数(从后向前)(1)循环读取逐渐增加的文件内容ping 127.0.0.1 >ping.log &后台运行:可使用 jobs -l 查看,也可使用 fg 将其移到前台运行。tail -f ping.log(查看日志)14、which 命令在 linux 要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:which 查看可执行文件的位置。whereis 查看文件的位置。locate 配合数据库查看文件位置。find实际搜寻硬盘查询文件名称。which 是在 PATH 就是指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果。使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。常用参数:-n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。实例:(1)查看 ls 命令是否存在,执行哪个which ls(2)查看 whichwhich which(3)查看 cdwhich cd(显示不存在,因为 cd 是内建命令,而 which 查找显示是 PATH 中的命令)查看当前 PATH 配置:echo $PATH或使用 env 查看所有环境变量及对应值15、whereis 命令whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。whereis 及 locate 都是基于系统内建的数据库进行搜索,因此效率很高,而find则是遍历硬盘查找文件。常用参数:-b 定位可执行文件。-m 定位帮助文件。-s 定位源代码文件。-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。实例:(1)查找 locate 程序相关文件whereis locate(2)查找 locate 的源码文件whereis -s locate(3)查找 lcoate 的帮助文件whereis -m locate

欢迎分享,转载请注明来源:

内存溢出

原文地址:

http://outofmemory.cn/yw/7683599.html
查看
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
comeacross comeacross 一级用户组
emc储存lum怎么挂载到linux上
上一篇
2023-04-08
centostcp不发送
2023-04-08

发表评论
请登录后评论... 登录
提交

    评论列表(0条)
保存
{label} {label} str exit 1filen=${#str}while [ $len -ge 0 ]dom=${str:$len:1}((len--))res=$', author : 'comeacross', cat_name : '系统运维', time_y_m : '2023年04月', time_d : '08', site_motto : '内存溢出' }; {script} {script}