ws连接命令Linux linux wsl( 七 )


$ alias jdev9i=/jdev9i/jdev/bin/jdev
关于 alias 和它的反命令 unalias 的更多信息,请查看 BASH 的 man 页面的 "SHELL BUILTIN COMMANDS" 子部分 。在最后一个例子中,定义了一个环境变量来实现相同的结果 。
$ export JDEV_HOME=/jdev9i/jdev/bin/jdev
$ echo $JDEV_HOME
/jdev9i/jdev/bin/jdev
$ $JDEV_HOME
链接允许几个文件名引用单个源文件,格式如下:
ln [-s] fileyouwanttolinkto newname
单独的 ln 命令创建到文件的一个硬链接,而使用 -s 选项来创建一个符号链接 。简而言之,一个硬链接几乎不能和原始的文件区分开(除了这两个文件的 inode 将相同之外) 。符号链接较容易区分,因为它们出现在一个长的文件列表中,并用 -; 来指示源文件,l 指示文件类型 。
查看和查找文件
文件过滤器
用来读取文件内容和在文件内容上执行操作的命令有时被称为 1滤器 。sed 和 awk 命令是两个滤波器的例子 , 因为在以前的 OTN 文章中有它们详细的讨论 , 在这里将略过 。
诸如 cat、 more 和 less 之类的命令让您能够从命令行查看一个文本文件的内容,而无需调用编辑器 。Cat 是 "concatenate" 的缩写,它将默认地在标准输出(显示屏)上显示文件内容 。和 cat 一起提供的最有趣的选项之一是 -n 选项 , 它用编号的输出行来显示文件内容 。
$ cat -n test.out
1This is a test.
因为 cat 一次性输出文件中的所有行 , 所以您可能更喜欢用 more 和 less,因为它们都一次输出一屏的文件内容 。Less 是 more 的一个增强的版本,它允许用来自 vi 文本编辑器的关键命令来增强文件查看 。例如,d 向前翻滚、b 向后翻滚 N 行(如果 N 是在 d 或 b 之前指定的) 。为 N 输入的值成为随后的 d 命令的默认值 。man 页面实用工具使用 less 来显示使用说明的内容 。
重定向和管道
重定向允许将命令输出重定向到文件中,而不是标准输出 , 或者类似地 , 也可重定向输入 。重定向的标准符号 ; 创建一个新的文件 。;; 符号将输出添加到一个现有的文件中:
$ more test2.out
Another test.
$ cat test.out ;; test2.out
$ cat test2.out
Another test.
This is a test.
到文件的标准输入可以用符号来重定向:
$ cattest2.out
错误消息用 2; 和 2;; 来重定向和添加 , 格式如下:
$ command 2; name_of_error_file
要避免无意地覆盖一个现有的文件 , 使用 BASH 内置的命令集:
$ set -o noclobber
可以在命令和输出文件之间用 ;! 符号来重载这个特性 。要关闭这个特性,用 +o 代替 -o 。
重定向在一个命令和文件之间、或文件和文件之间工作 。重定向语句的一项必须是一个文件 。
管道使用 |符号,并且在命令之间工作 。例如,您可以用以下方式将一个命令的输出直接发送到打印机上:
$ ls -l * | lpr
可以用以下方式快速地找到历史列表中的一个命令:
$ history | grep cat
更多的滤波器
Grep、fgrep 和 egrep 都显示匹配一种模式的行 。所有这三个命令都在文件中搜索指定的模式,如果您想不起来一个所需文件的名称,这将非常有用 。基本格式是:
grep [options] PATTERN [FILE...]
$ grep -r 'Subject' nsmail
CTRL-Z 将终止上述或其它任何命令 。
grep 的最有用的选项可能是 -s 。如果您以除根用户之外的任何身份搜索系统文件,那么对于每一个您没有访问权限的文件,都将产生错误消息 。这个命令禁止那些消息 。
Fgrep(也以 grep -F 调用)只查找固定的字符串,而不是 grep 接收的正则表达式 。而 egrep 接收包含更大范围的特殊字符(如 “|” , 它指示条件 OR 运算符)的模式 。

推荐阅读