46、创建一个包含以下列表的文件,然后在 vim 中执行命令对列表进行排序并以两列形式显示。命令模式、输入模式、末行模式、工作缓冲区、通用缓冲区、命名缓冲区、正则表达式、搜索字符串、替换字符串、启动文件、重复因子
- 使用 vim 创建文件并输入列表内容。
- 移动光标到列表开头,设置标记 q,命令为
mq。 - 移动光标到列表末尾,执行命令
!'qsort对列表排序。 - 若要将排序后的列表以两列形式显示,可执行
!pr -2命令。
47、哪个命令可以将光标移动到当前段落的末尾?能否使用此命令以段落为单位在缓冲区中跳转?
在 Emacs 编辑器中,按下 META - } 可将光标移动到当前段落的末尾,并且可以在该命令前加上重复计数( CONTROL - U 和一个数字参数),以指定移动的段落数,从而实现以段落为单位在缓冲区中跳转;
在 Vim 编辑器中,按下 } 键 可将光标移动到下一个段落的开头,也可用于以段落为单位在缓冲区中跳转。
48、假设你在输入一个长句子时迷失了思路。有没有简单的方法来删除这个混乱的句子并重新开始呢?
可以使用 CONTROL-X DELETE 命令向后删除到句子开头,或者使用 META-k 命令向前删除到句子结尾。
49、在处理一个段落一段时间后,很可能有些行太短,而有些行太长。是否有一个命令可以“整理”段落,而无需手动重新断行?
可以使用 META-q 命令来重新填充当前段落,或使用 META-x fill-region 命令来重新填充点(Point)和标记(Mark)之间区域内的每个段落。
50、是否有办法将缓冲区的全部内容更改为大写字母?能否想出一种只更改一个段落的方法?
可以使用 CONTROL-X CONTROL-U 将缓冲区中标记点(Point)和标记(Mark)之间的区域(Region)内容更改为大写字母,若将标记点和标记分别设置在缓冲区首尾,即可将全部内容改为大写字母。要只更改一个段落,可先将光标(即标记点)移到该段落起始处,使用 CONTROL-@ 或 CONTROL-SPACE 设置标记,再将光标移到段落末尾,然后使用 CONTROL-X CONTROL-U 命令;也可使用 META-q 命令先重填当前段落,再使用上述区域大写转换方法。
51、解释以下意外结果:执行命令 whereis date 显示 /bin/date , echo $PATH 显示 .:/usr/local/bin:/usr/bin:/bin ,使用 cat > date 输入 echo "This is my own version of date." 创建了一个名为 date 的文件,之后执行 date 命令却输出 Tue May 24 11:45:49 PDT 2005 。
尽管使用 cat > date 创建了自定义的 date 脚本,但执行 date 命令时,系统仍然调用了 /bin/date 。
这是因为在执行命令时,系统会按照 PATH 环境变量指定的目录顺序查找可执行文件。当前工作目录 . 虽然在 PATH 中,但系统在 /bin 目录中找到了 date 命令,并优先执行,而非当前目录下自定义的 date 脚本。
52、当你对包含脚本的文件没有执行权限时,有哪两种方法可以执行 shell 脚本?如果你对包含脚本的文件没有读取权限,是否可以执行该 shell 脚本?
当没有执行权限时,执行 shell 脚本的两种方法
- 方法一 :将文件名作为参数传递给
bash,例如:
bash bash whoson
- 方法二 :将文件名作为参数传递给
tcsh(适用于 tcsh 脚本文件),例如:
tcsh tcsh scriptfile
注意 :如果对包含脚本的文件没有 读取权限 ,则无法执行该 shell 脚本,因为执行 shell 脚本的前提是拥有 读取权限 。
53、PATH变量的作用是什么?a. 设置PATH变量,使shell按以下顺序搜索目录:/usr/local/bin、/usr/bin/X11、/usr/bin、/bin、/Developer/Tools、用户主目录下的bin目录、当前工作目录。b. 如果/usr/bin中有一个名为doit的文件,~/bin中也有一个同名文件,哪个文件会被执行?(假设你对这两个文件都有执行权限)c. 如果PATH变量未设置为搜索当前工作目录,如何执行位于该目录的程序?d. 可以使用哪个命令将目录/usr/sbin添加到PATH目录列表的末尾?
PATH变量的作用是控制shell搜索可执行文件的目录顺序。
a. `export PATH=


8623

被折叠的 条评论
为什么被折叠?



