iOS开发常用shell命令

1、shell是什么? 答:(1)Shell是一种具备特殊功能的程序, 它是介于使用者和 UNIX/Linux 操作系统之核心程序(kernel)间的一个接口。 (2)为了对用户屏蔽内核的复杂性,也为了保护内核以免用户误操作造成损害,在内核的周围建了一个外壳(shell)。用户向shell提出请求,shell解释并将请求传给内核。 (3)使用较广的shell有标准的Bourne?shell?(sh)、Korn Shell(ksh)、C?shell?(csh)、Bourne Again Shell(bash)等。 例如:查看当前环境所用shell:echo $SHELL (4)shell的另一个重要特性是它自身就是一个解释型的程序设计语言,shell程序设计语言支持绝大多数在高级语言中能见到的程序元素,如函数、变量、数组和程序控制结构。shell编程语言简单易学,任何在提示符中能键入的命令都能放到一个可执行的shell程序中。 (5)本质上,shell?脚本是命令行命令简单的组合到一个文件里面。Shell基本上是一个命令解释器,类似于DOS下的command.com。它接收用户命令,然后调用相应的应用程序。 2、shell的特点: (1) 对已有命令进行适当组合,构成新的命令,并且组合方式很简单 (2) 提供了文件名扩展符使得用单一的字符串可以匹配多个文件名 (3) 可以直接使用Shell的内置命令,而不需创建新的进程 (4) Shell允许灵活地使用数据流,提供通配符、输入/输出重定向、管道符等机制,方便了模式匹配、I/O处理和数据传输。 (5) 结构化的程序模块,提供了顺序流程控制、分支流程控制、循环流程控制等 (6)Shell提供了在后台(&)执行命令的能力 (7) Shell提供了可配置的环境,允许用户创建和修改命令、命令提示符和其它的系统行为 (8) Shell提供一个高级的命令语言,允许用户能创建从简单到复杂的程序。 3、shell用户管理命令: 1.新建用户(user add) useradd UserName 新建用户后,会在/home目录下建立一个以UserName命名的文件夹,用户每次登录时自动定位到该文件夹下。 2.为用户修改密码(password) passwd UserName 3.删除用户(user delete) userdel UserName 使用-p选项可以删除用户目录下的文件及与用户相关联的其他文件。 4.新建组群(group add) groupadd GroupName 5.删除组群(group delete) groupdel GroupName 6.用户身份 whoami 7.查看登录用户 who [选项] -a 显示所有用户的所有信息 -H 显示列标题 8.查看用户的操作 w 某一时刻用户的行为 9.用户间切换(substitute user) su UserName 如:su 或su root 切换为根用户 su Haison 切换为名为Haison的用户 4、shell目录管理命令: 1.创建目录(make directory) mkdir DirectoryName 2.删除目录(remove directory) rmdir DirectoryName 3.显示工作目录(print working directory) pwd 4.显示目录内容(list) ls [选项] 选项:-a 显示当前目录下的所有文件,包括以.开头的文件。 -l 以长列表的形式显示文件列表,如: -rw-r--r-- 1 haison haison 18 Nov 2 10:10 haison.c 5.改变当前目录(change directory) cd 或 cd ~ 进入登录时的主目录 cd / 进入根目录 cd .. 进入上一级目录 cd /home 进入系统的home目录 cd home 进入当前目录下的home目录 6.目录重命名(move) mv SourceDirecName TargetDirecName 7.目录拷贝(copy) cp SourceDirec TargetDirec -r 拷贝目录下的文件、子目录及子目录下的文件 5、shell文件管理命令 1.新建文件 >FileName 或 touch FileName 或 vi FileName 2.删除文件(remove file) rm [选项] FileName 选项:-i 系统提示是否真要删除该文件 -f 删除文件之前不提示任何确认信息 -r 递归删除目录下所有子目录的内容 3.文件拷贝(copy) cp SourceFile TargetFile 4.文件链接(link) ln –s SourceFile TargetFile 创建文件链接,用ls –l查看,会看到TargetFile->SourceFile 5.显示文件内容 more FileName 一次一屏的显示文件内容,空格或回车显示下一屏 less FileName 一次一屏的显示文件内容,空格或回车显示下一屏 cat FileName 一次全部显示文件的内容 cat file1 file2>file3 将file1、file2的内容写到file3,覆盖file3原内容 cat file1>>file2 将file1的内容追加到file2,file2原内容不变 head FileName 只显示文件的前10行 head –n FileName 显示文件的前n行 tail FileName 只显示文件的后10行 tail –n FileName 显示文件的后n行 tail –f FileName 查阅正在改变的日志文件,会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容. nl FileName 以编号的形式一次全部显示文件的内容,忽略空行 6.文件移动/重命名(move) mv SourceFile TargetFile 将一个或多个文件移动到另外一个目录下,或者将一个文件重命名为另一个文件。 7.文件查找(find) find [路径] [选项] 如:find / -name test.txt -print 8.文件内容查找(grep) 如:grep main haison.c grep -i main haison.c #忽略大小写 grep –n main haison.c #输出行号 grep -v main haison.c #反检索,只显示不匹配的行 9.文件类型 命令ls –l以长列表形式显示文件的类型等,如:-rw-r--r--

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。