转载自:http://tech.hqew.com/fangan_741972【写在读之前】1、 黑 {MOD}加粗的为命令,不可拼读错误;2、 -->是解释箭头;3、 所有括号内的内容为补充说明或单词补全,可不输入;4、 所有标记红 {MOD}“例”为有图示的例子;5、 颜 {MOD}一样、连在一起的且中间有空格的几个单词,是一个命令或一个完整说明;6、 其它颜 {MOD}为可以区分设置,没有特殊含义;7、 实际命令的空格间隔很小,为了加以区别以便让人更清楚地区分,空格一般输入不止一个;8、 暂时不理解的名词可讨论或网络搜索;9、 由于水平有限,难免出错或过于繁琐,今后会逐步完善,望指正~第二课 Linux基本命令(一)一、基本命令 1、clear -->清屏 2、pwd(print current working directory) -->打印当前目录 3、echo --> 回显 例:echo hello例:echo $PATH(回显路径) 4、date --> 显示或者设置日期 5、ls(list) --> 显示目录下的文件列表 6、cd(change directory) --> 切换目录 7、alias --> 给某个命令起别名 例:alias ll='ls -l'(=两边不能有空格) 给ls –l重命名为ll /************************************ ls指令********************************/ 1)ls [option...] [arg...] 2)ls -a[ll] --> 显示所有文件,包括隐藏文件 3)ls -l[ong] --> 以长格式显示文件信息 4)ls -al 5)ls -h[uman readable] --> 以k,m,g显示文件的大小 6)ls -F --> 显示文件类型 7)ls -R --> 递归显示 8)ls / --> 显示/目录的内容 9)ls –a / --> 显示/目录的所有内容 10)ls -l --> 以长格式显示文件信息 例:-rwxrwxr-x 1 shangziyun shangziyun 4805 05-12 10:31 a.out 各部分解释如下:- --> 文件类型(该文件为普通文件,若为d,则为目录) rwxrwxr-x --> 文件的三组权限(u,g,o),可使用8进制 1 --> 文件的硬链接数 shangziyun --> 文件的属主 shangziyun --> 文件的属组 4805 --> 文件大小(以byte为单位) 05-12 10:31 --> 文件的最后修改时间 a.out --> 文件名 /*************************************************** ls指令 *****************/ 8、Linux帮助信息 例:man[ual] ls --> 查找对ls的帮助信息 9、bash常用快捷键 ctrl^c -->结束一个前台进程 ctrl^z -->挂起一个前台进程 ctrl^L -->清屏二、目录操作命令 1、cd --> 切换工作目录 1)绝对路径和相对路径 2)几个特殊的目录 ~ (用户主目录) ~ 等价于/home/sramedu . (当前目录) .. (上层目录) 3)cd 后不跟参数,代表回到家目录 2、mkdir --> 创建新目录3、-p --> 自动创建父目录 4、rmdir --> 删除目录(只能删除空目录)三、文件操作命令 1、创建文件--> touch (文件存在,则修改最后访问时间;文件不存在,则创建) 例:touch task.c 2、删除文件--> rm 1)rm -r[ecursive] --> 用于删除目录(不管是否为空) 2)rm -f --> 强制删除(即使有错,也不提示) 3)rm -i --> 交互模式 例:rm a.out 例:rm -r dir1 例:rm -rf dir1 3、复制(复制+粘贴) --> cp 1)cp -r --> 用于复制目录 2)cp -f --> 强制复制 3)cp -i --> 交互模式 例:cp /etc/passwd ~/Desktop/passwd --> 将/etc/passwd复制到~/Desktop/passwd下 例:cp -r dir1 ~/Desktop 4、移动(剪切+粘贴)(实质上相当于重命名) --> mv 例:mv /etc/passwd ~/pass说明:提示权限不够,例子不恰当,但格式是没有问题的,倘若切换到root用户,还是可以操作的(不建议尝试) 例:mv dir1 dir2 5、查看文件内容--> cat more/less --> 分页查看(每次显示一页,space向下翻页,b向上翻页) 例:more /etc/passwd 例:less /etc/passwd 例:head/tail --> 显示文件的前n行/后n行 例:head /etc/passwd --> 显示/etc/passwd的前n行/后n行 例:head -n 5 /etc/passwd --> 显示/etc/passwd的前5行 6、修改文件内容(写文件),利用VIM编辑器(输入vi或vim命令) 7、查看文件类型--> file 例:file dir1 8、文字统计--> wc 例:wc -l 统计行数 例:wc -c 统计字节数 9、文件查找--> 1、find 格式:find [查找路径] [选项] [参数] 例:find / -name passwd --> 通过名字查找passwd文件 2、locate 10、文件内容查找--> grep 例:grep 'shang' /etc/passwd -->在/etc/passwd下查找关键字“shang” 四、正则表达式 通配符: * --> 0个或者任意多个任意字符 ? --> 1个任意字符 五、文件重定向 标准设备: stdin(0),stdout(1),stderr(2) 0 --> < 输入重定向 1 --> > 输出重定向 2 --> 2>错误重定向六、文件查找(find,locate和grep) 1、find 指令格式:find [路径] [选项] [参数] [选项(查找方式)]: -name -size -mtime -atime -type -uid -perm 举例: 1)查找系统中所有的passwd文件(由于此类文件太多,将不需要的统统放入无底洞) find / -name 'passwd' 2>/dev/null >res.txt 2)查找/etc目录下所有以'txt'为后缀的文件(由于 find /etc -name '*.txt' 3)查找主目录下 大小<1024的文件 find ~ -size -1024c 4)查找系统中所有最后修改时间在1天之前的文件 find / -mtime +1 5)查找当前目录下所有的.c文件并且打包为code.zip find . -name '*.c' | xargs zip code.zip 6)查找当前目录下所有的.txt文件,并且删除 find . -name '*.txt' | xargs rm 7)查找/usr/include中哪个头文件有printf的定义 find /usr/include -name '*.h' | xargs grep 'printf' //将find的结果当做文件看待,从文件中找printf find /usr/include -name '*.h' | grep 'printf' //将find的结果当做字符串看待,从中找到printf 提示: '|'默认将之前命令的输出当做“普通的字符串”看待,如果需要当做文件来处理,必须加xargs选项 2、locate 从系统数据库中查找某个文件,速度快。 系统数据库一般在系统启动时建立,因此,新创建的文件可能会找不到 3、grep -- 查找内容七、管道符号 --> | 说明:管道符号连接两个命令,将前面命令的输出,当做后面命令的输入 例:cat /etc/passwd | more 例:ls -l | wc -l 例:find . -name '*.c' | xargs zip code.zip -->查找当前目录下的c文件并打包到当前目录下的code.zip