码迷,mamicode.com
首页 > 系统相关 > 详细

Shell 命令行接口及基础命令

时间:2015-11-14 23:35:06      阅读:674      评论:0      收藏:0      [点我收藏+]

标签:shell



shell 中的变量赋值:

如:PS1=value

如果是 value 是字符串,要用引号引用起来


PS1=‘[\u@\h \w]\$’



PS1:

\u  当前用户名

\h  当前主机名

\w  当前工作目录基名

\W  当前工作目录绝对路径

\$  提示符




shell 中的命令:


shell 中的常用命令,如 cd, cp,ls, pwd 等等实质上也就是二进制的可执行程序。

通过 shell 这个接口,可以方便我们进行调用完成某种工作。


当我们在命令行中输入某个命令时,shell 程序在哪里去找到命令来调用执行呢?

通过 PATH 环境变量中的路径,依次查找



命令就其本身的文件格式而言,分为:

二进制文件

脚本文件


其中,二进制文件的可执行程序,又可根据它的用途分为:

命令 - 完成单一功能的程序,如 cd,cp,mkdir,rm 等等

应用程序 - 大型的应用程序,如 httpd, mysql 等等


命令也有类型划分:

shell 程序自带的命令: 内建命令

其他命令:外部命令 


怎样查看一个命令的类型呢:

type COMMAND


如果是 shell 自带的命令,会显示:某个命令 is a shell builtin

如果是外部命令,可能显示这个命令的绝对路径,或者有可能是一个命令别名


命令的语法格式:

COMMAND OPTIONS ARGUMENTS

命令都要配合一定的选项来使用

比如:

ls 显示目录信息

ls -l 显示详细的目录信息 

ls -lt 目录信息列表按文件的修改时间排序 


命令的参数呢,是指定命令的作用对象 

比如:

ls 其实等于 ‘ls .’ 的作用对象其实是当前目录,显示当前目录的内容列表

ls /home 显示 /home 目录的内容列表



如何获取命令的使用说明呢:

COMMAND - -help

man COMMAND


man COMMAND 实际上调用了 less 命令,打开帮助文档

怎么查看一个命令在哪些章节下有帮助文档:

whatis COMMAND


man 手册中的格式字符串:

[]: 方括号中的表示可以省略

<>: 尖括号中的不可以省略

|:二选一,或者多选一

…: 同样的内容可以有多个


man 的使用:

翻屏:

空格键:向下翻一屏

b:想上翻一屏

回车 或者 j:向下翻一行

k:向上翻一行


Ctrl+d: 向下翻半屏

Ctrl+u: 向上翻半屏 

G:到文件尾部

g:到文件顶部

搜索:

/string 向下搜索(区分大小写)

?string 向上搜索

n 查看下一个目标(搜索出来的对象不止一个时)

N 查看上一个目标


很多应用程序自带有帮助文档: /usr/share/doc

CHANGELOG: 版本升级变动

INSTALL: 安装说明

README: 程序说明


主流发型版的官方文档:

www.redhat.com/docs


google 



介绍一些常用的命令:


cd: 切换目录


cd 或者 cd ~: 切换到当前用户的家目录

cd -: 切换到上一个工作目录


最常用的是切换到某个目录:

cd /path/to/directory  这是目录的绝对路径,从根目录 ‘/’ 开始的表示法


有两个目录比较特殊:

. 表示当前目录

.. 表示上一级目录


由此我们也可使用相对路径跳转到目标目录:

cd ../: 切换到上一级目录

cd ./guli 或者 cd guli: 是同一个意思,切换到当前目录下的 guli 目录中


以上就是目录路径的两种表示法:

1,相对路径

2,绝对路径



history: 显示命令执行的历史


在命令行执行过的命令,保存在内存中,保存多少条命令,由一个环境变量设置:

HISTSIZE - 默认是1000条

用户正常退出后,这些内存中保存的命令历史被保存到用户目录的一个文件中,通常是:

.bash_history 

这个也是可以改的,由 HISTFILE 环境变量设置保存的位置


还可以通过 HISTFILESIZE 设置文件中可以保存的最大数目



常用的命令:

history N: 显示最近 N 条命令历史

history -c: 清空命令历史

history -d offset: 删除指定的偏移位置的命令历史

history -a [/path/to/some_history_file]: 将当前会话中的命令历史写入指定文件



还有几种快捷的使用技巧:

!#: 使用指定位置的命令历史所记录的命令

!!: 再一次执行上一条命令

!string: 执行命令历史中最近一次以 string 开头的命令

!$: 调用上一条命令的最后一个参数 - 比如 ls !$ 

ESC,.: 按下 ESC ,松开后,按 . 号, 也是调用上一条命令的最后一个参数






 





















本文出自 “古二娃” 博客,请务必保留此出处http://guli3057.blog.51cto.com/6809117/1712777

Shell 命令行接口及基础命令

标签:shell

原文地址:http://guli3057.blog.51cto.com/6809117/1712777

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!