第5章C-shell的交互功能

合集下载

Shell脚本编写的高级技巧如何实现交互式用户界面

Shell脚本编写的高级技巧如何实现交互式用户界面

Shell脚本编写的高级技巧如何实现交互式用户界面在Shell脚本编写过程中,要实现交互式用户界面是一项非常重要的技巧。

通过交互式用户界面,可以使脚本更加友好、灵活,提高用户的体验和效率。

本文将介绍几种实现交互式用户界面的高级技巧。

一、使用read命令获取用户输入在Shell脚本中,可以使用read命令来获取用户的输入。

read命令可以从标准输入读取数据,并将读取的数据赋值给指定的变量。

通过使用read命令,可以实现用户输入的交互式界面。

示例代码如下:```shell#!/bin/bashecho "请输入您的姓名:"read nameecho "您输入的姓名是:$name"```在上述示例代码中,首先使用echo命令提示用户输入姓名,然后使用read命令将用户输入的姓名赋值给name变量,最后使用echo命令输出用户输入的姓名。

二、使用select语句创建菜单除了使用read命令获取用户输入外,还可以使用select语句创建菜单,实现交互式的选择界面。

示例代码如下:```shell#!/bin/bashPS3="请选择一个操作:"options=("查看文件" "编辑文件" "退出")select opt in "${options[@]}"docase $opt in"查看文件")echo "您选择了查看文件操作";;"编辑文件")echo "您选择了编辑文件操作";;"退出")break;;*) echo "无效的选项";;esacdone```在上述示例代码中,首先定义了一个包含菜单选项的数组options,然后使用select语句创建了一个菜单界面,用户可以通过输入对应的编号来选择相应的操作。

第5章C-shell的交互功能

第5章C-shell的交互功能

第5章 C-shell的交互功能
别名机制举例
定义别名
alias dir "ls -flad" alias n "netstat -p tcp -s | head -10" alias r "netstat -rn" alias h "history" alias rm 'rm -i' alias p 'ping 202.143.12.189' alias rt 'traceroute 217.226.227.27
输入输出重定向
输入重定向
<filename 从文件filename中输入
输出重定向
1. >文件:把stdout重定向到一个文件中,不影响stderr 仍然在终端输出
2. >&文件:把stderr合并到stdout,再重定向到一个文 件中。 3. >>文件或>>&文件:若文件不存在,则创建;若文件 已存在则追加到文件尾。
UNIX的shell
shell的主要功能
作为交互式的命令解释器,是用户与系统之间的接口
支持文件名替换,命令替换,变量替换 支持管道和重定向操作
有流程控制的内部命令,支持程序设计
内部命令与外部命令
内部命令:在shell内部实现的命令 外部命令:shell之外用程序文件实现的命令 外部命令执行时需要搜寻程序文件并装入执行,因此 运行效率不如内部命令
第5章 C-shell的交互功能
UNIX的shell
用户shell
管理员在创建用户时,在/etc/passwd文件中 设置了用户的登录shell,用户登录后即进入注 册的shell。 某/etc/passwd文件的片断如下:

简述shell的功能

简述shell的功能

简述shell的功能Shell是一种命令行解释器,它是操作系统中的一部分,用于接受用户输入的命令并将其转换为操作系统能够理解的指令。

Shell具有许多功能,包括执行命令、管理文件和目录、环境变量、管道、I/O 重定向等。

本文将简要介绍Shell的功能及其用法。

1. 执行命令Shell最基本的功能就是执行命令。

用户可以在Shell中输入命令并执行,Shell会将命令转换为操作系统能够理解的指令,并执行相应的操作。

例如,用户可以在Shell中输入“ls”命令来列出当前目录下的文件和目录。

2. 管理文件和目录Shell还可以用于管理文件和目录。

用户可以使用Shell命令来创建、删除、移动和复制文件和目录。

例如,用户可以使用“mkdir”命令来创建一个新的目录,使用“cp”命令来复制文件,使用“mv”命令来移动文件或目录。

3. 环境变量Shell还可以管理环境变量。

环境变量是操作系统中用于存储系统设置和配置信息的变量。

用户可以使用Shell命令来设置、修改和删除环境变量。

例如,用户可以使用“export”命令来设置一个新的环境变量。

4. 管道Shell还支持管道。

管道是一种将一个命令的输出作为另一个命令的输入的机制。

用户可以使用Shell命令来创建管道,将命令的输出传递给另一个命令。

例如,用户可以使用“ls | grep”命令来列出当前目录下的文件和目录,并使用grep命令来搜索其中的特定内容。

5. I/O重定向Shell还支持I/O重定向。

I/O重定向是一种将命令的输入或输出重定向到文件或其他设备的机制。

用户可以使用Shell命令来重定向命令的输入或输出。

例如,用户可以使用“>”符号将命令的输出重定向到一个文件中,使用“<”符号将文件的内容作为命令的输入。

总结Shell是一种非常强大的命令行解释器,它提供了许多功能,包括执行命令、管理文件和目录、环境变量、管道、I/O重定向等。

这些功能使得Shell成为了一种非常实用的工具,可以帮助用户更加高效地管理和操作计算机系统。

C程序调用shell脚本共有三种方法

C程序调用shell脚本共有三种方法

C程序调⽤shell脚本共有三种⽅法C程序调⽤shell脚本共有三种法⼦:system()、popen()、exec系列函数call_exec1.c,内容为:system() 不⽤你⾃⼰去产⽣进程,它已经封装了,直接加⼊⾃⼰的命令exec 需要你⾃⼰ fork 进程,然后exec ⾃⼰的命令popen() 也可以实现执⾏你的命令,⽐system 开销⼩1)system(shell命令或shell脚本路径); system() 会调⽤fork()产⽣⼦历程,由⼦历程来调⽤/bin/sh-c string来履⾏参数string字符串所代表的命令,此命令履⾏完后随即返回原调⽤的历程。

在调⽤system()期间SIGCHLD 信号会被暂时搁置,SIGINT和SIGQUIT 信号则会被漠视。

返回值:如果system()在调⽤/bin/sh时失败则返回127,其他失败原因返回-1。

若参数string为空指针(NULL),则返回⾮零值。

如果system()调⽤成功则最后会返回履⾏ shell命令后的返回值,但是此返回值也有可能为system()调⽤/bin/sh失败所返回的127,因此最好能再反省 errno 来确认履⾏成功。

system命令以其简略⾼效的作⽤得到很很⼴泛的利⽤,下⾯是⼀个例⼦例:在/tmp/testDir/⽬录下有shell 脚本tsh.sh,内容为#!/bin/shwget $1echo "Done!"在同层⽬录下新建⼀个c⽂件(以下代码可带参数)#include <stdio.h>#include <string.h>#include<unistd.h>int main(int argc ,char *argv[]){char arg[300]="/tmp/testDir/tsh.sh ";if ( argv[1] != NULL ){strcat(arg,argv[1]);system(arg);printf("\ndone message in program\n");return1;}else{printf("Error: Empty input\n");return0;}}履⾏效果如下:运⾏输出[root@localhost testDir]#gcc call_exec1.c -o call_exec1[root@localhost testDir]#./call_exec1 /img/logo-yy.gif--2011-01-2117:02:22-- /img/logo-yy.gif正在解析主机 ... 61.135.169.105, 61.135.169.125Connecting to |61.135.169.105|:80... 已连接。

Shell脚本中的GUI界面设计和交互技巧

Shell脚本中的GUI界面设计和交互技巧

Shell脚本中的GUI界面设计和交互技巧Shell脚本是一种在Unix操作系统中使用的脚本语言,用于自动化任务和编写系统管理脚本。

虽然Shell脚本通常以命令行的形式运行,但通过添加图形用户界面(GUI)可以提供更好的用户体验和可视化效果。

本文将介绍Shell脚本中的GUI界面设计和交互技巧。

一、使用dialog命令创建GUI界面Dialog是一个在Shell脚本中创建对话框的工具,它提供了一些常见的GUI元素,如文本框、标签、按钮等。

通过使用dialog命令,我们可以在Shell脚本中轻松地创建一个基本的GUI界面。

下面是一个示例代码,演示如何使用dialog命令创建一个简单的GUI界面:```#!/bin/bashdialog --msgbox "欢迎使用Shell脚本GUI界面!" 10 30```上述代码使用dialog命令创建一个消息框,显示一个欢迎消息。

其中,`--msgbox`参数指定对话框类型为消息框,后面的文本是要显示的消息内容,`10`表示对话框的高度,`30`表示宽度。

二、添加用户输入和按钮除了简单的消息框,我们还可以在GUI界面中添加用户输入和按钮,以实现更复杂的交互。

下面是一个示例代码,演示如何使用dialog命令添加文本框和确认按钮:```#!/bin/bashresult=$(dialog --inputbox "请输入您的姓名:" 10 30 2>&1 >/dev/tty) dialog --yesno "确认使用姓名:$result 吗?" 10 30if [ $? -eq 0 ]; thenecho "您选择了确认按钮"elseecho "您选择了取消按钮"fi```上述代码使用dialog命令创建一个文本框,用户可以在其中输入姓名。

`2>&1 >/dev/tty`用于将用户输入保存到变量`result`中。

cshell语法

cshell语法

cshell语法Cshell是一种Unix Shell程序,主要用于在命令行界面下与操作系统进行交互。

Cshell语法是Cshell编程中必须掌握的一部分,它允许用户编写脚本来自动化一系列操作。

Cshell语法的基本结构与C语言类似,包含命令、参数和控制结构等。

以下是一些常用的Cshell语法:1. 命令和参数:Cshell中,命令和参数是以空格分隔的。

命令用来执行特定的任务,而参数用来给命令传递额外的信息。

例如,在Cshell中执行"ls -l"命令可以列出当前目录下的文件和文件夹,并显示详细信息。

2. 注释:在Cshell中,使用"#"符号来注释一行代码。

注释通常用来解释脚本的功能或提醒自己后续需要添加的代码。

例如,可以在脚本中添加注释,说明某一行代码的作用。

3. 变量:可以在Cshell中使用变量来存储值和临时数据。

变量名不需要预先声明,直接使用即可。

变量赋值使用"="符号,例如"var=100"。

使用变量时需要使用"$"前缀,例如"echo $var"将会输出"100"。

4. 控制结构:Cshell中提供了多种控制结构,用于根据条件执行不同的代码块。

常见的控制结构包括if语句、for循环和while循环。

if语句用于条件判断,for循环用于重复执行一段代码块,while循环用于在满足条件时执行一段代码块。

5. 输入和输出重定向:Cshell提供了输入和输出重定向的功能,允许用户将命令的输入和输出重定向到文件或其他设备。

输出重定向使用">"符号,例如"ls > output.txt"将目录列表输出到名为output.txt的文件中。

输入重定向使用"<"符号,例如"wc -l < input.txt"将会统计input.txt文件中的行数。

Shell脚本编写的高级技巧使用并发控制和互斥机制

Shell脚本编写的高级技巧使用并发控制和互斥机制Shell脚本编写的高级技巧: 使用并发控制和互斥机制Shell脚本作为一种自动化工具,在系统管理和任务自动化方面非常常用。

它不仅可以执行基本的命令和操作,还可以通过编写脚本来实现更为复杂的功能。

在大规模数据处理和任务调度中,如何实现并发控制和互斥机制是一个非常重要的问题。

本文将探讨如何使用Shell脚本编写高级技巧,以实现并发控制和互斥机制的功能。

1. 并发控制技巧并发控制是指在多个任务同时执行时,合理控制它们执行的顺序和并发数量,以避免资源冲突和性能问题。

下面介绍几种常见的并发控制技巧。

1.1 任务调度任务调度是通过使用Shell脚本来安排任务的执行顺序和时间。

在Shell脚本中,可以使用条件判断、循环和延时等功能来实现任务的调度。

例如,可以使用if语句来判断某个条件是否满足,如果满足则执行某个任务;使用while循环来循环执行某个任务直到满足退出条件;使用sleep命令来延时执行某个任务。

1.2 后台执行后台执行是指将某个任务放入后台运行,以释放终端或脚本的控制权。

在Shell脚本中,可以使用&符号来将某个任务放入后台执行。

例如,可以使用命令&来让某个任务在后台运行,然后继续执行下一个任务。

1.3 任务控制任务控制是指通过使用Shell相关命令来控制任务的执行状态和流程。

在Shell脚本中,可以使用相关命令来暂停、终止和等待某个任务的执行。

例如,可以使用Ctrl+C来终止某个任务的执行;使用wait命令来等待某个任务的执行完成。

2. 互斥机制技巧互斥机制是指在多个任务同时执行时,合理控制它们对共享资源的访问,避免发生竞争和冲突。

下面介绍几种常见的互斥机制技巧。

2.1 文件锁文件锁是一种基于文件系统的互斥机制,通过给某个文件加上锁的方式来控制对该文件的访问。

在Shell脚本中,可以使用一些特定命令来加锁和解锁文件。

例如,可以使用flock命令来加锁和解锁文件,以确保在某个任务执行期间,其他任务无法访问该文件。

Shell脚本编写如何处理用户输入和交互式操作

Shell脚本编写如何处理用户输入和交互式操作在编写Shell脚本时,处理用户输入和进行交互式操作是非常重要的技巧。

这些功能可以帮助我们创建更加灵活和易用的脚本,提高用户体验。

本文将介绍如何使用Shell脚本来处理用户的输入和进行交互操作,并提供一些实用的示例代码。

1. 处理用户输入在Shell脚本中,我们可以通过多种方式获取用户的输入。

以下是几种常见的处理用户输入的方法:1.1 使用read命令获取用户输入read命令可以用来从标准输入读取用户的输入,并将输入保存到一个变量中。

通过read命令可以实现简单的用户交互功能。

示例代码1:通过read命令获取用户的名称并输出```shell#!/bin/bashecho "请输入您的名称:"read nameecho "您好,$name!"```运行以上脚本,在控制台中会提示用户输入名称,用户输入后脚本会打印出"您好,xxx!"的消息,其中xxx为用户输入的名称。

1.2 使用命令行参数获取用户输入除了read命令,Shell脚本还可以通过命令行参数获取用户的输入。

命令行参数是指在运行脚本时在脚本名称后面添加的参数。

示例代码2:通过命令行参数获取用户的名称并输出```shell#!/bin/bashname=$1echo "您好,$name!"```运行以上脚本时,在脚本名称后面添加参数,比如"bash script.sh Tom",脚本会打印出"您好,Tom!"的消息。

2. 进行交互式操作除了获取用户输入,Shell脚本还可以通过交互式操作与用户进行动态交互。

以下是几种常见的交互式操作方法:2.1 使用select命令提供菜单选择select命令可以用来生成一个带有选项的菜单供用户选择。

示例代码3:通过select命令提供菜单选择```shell#!/bin/bashoptions=("Option 1" "Option 2" "Option 3" "Quit") select choice in "${options[@]}"docase $choice in"Option 1")echo "您选择了选项1";;"Option 2")echo "您选择了选项2";;"Option 3")echo "您选择了选项3";;"Quit")break;;*)echo "无效选项";;esacdone```运行以上脚本,在控制台中会显示一个菜单供用户选择,用户可以通过输入数字或选择对应的菜单选项进行操作。

Shell脚本编写如何处理用户输入和交互

Shell脚本编写如何处理用户输入和交互Shell脚本是一种用来编写和执行命令的脚本语言。

用户输入和交互是Shell脚本中重要的组成部分,它允许脚本与用户之间进行动态的信息传递和交流。

本文将介绍如何在Shell脚本中处理用户输入和实现交互功能。

一、获取用户输入获取用户输入是Shell脚本中常见的操作,可以通过read命令实现。

read命令允许脚本从标准输入中读取用户输入,并将其存储到一个变量中。

以下是一个简单的示例:```shell#!/bin/bashecho "请输入您的姓名:"read nameecho "欢迎您,$name!"```在上述示例中,脚本首先通过echo命令打印提示信息,然后使用read命令获取用户输入,并将其存储到变量name中。

最后,通过echo命令将欢迎信息与用户输入进行拼接并打印出来。

二、处理用户输入Shell脚本可以通过if语句等条件判断语句来处理用户输入。

根据用户的输入进行不同的操作是编写脚本时常见的需求。

以下是一个示例:```shell#!/bin/bashecho "请选择您的操作:"echo "1. 显示系统信息"echo "2. 显示磁盘使用情况"echo "3. 显示当前时间"read choiceif [ "$choice" == "1" ]; thenecho "系统信息:"uname -aelif [ "$choice" == "2" ]; thenecho "磁盘使用情况:"df -helif [ "$choice" == "3" ]; thenecho "当前时间:"dateelseecho "无效的选项"fi```在上述示例中,脚本首先打印一个操作菜单,然后使用read命令获取用户的选择,并将其存储到变量choice中。

shell脚本中的交互式输入自动化

shell脚本中的交互式输⼊⾃动化shell中有时我们需要交互,但是呢我们⼜不想每次从stdin输⼊,想让其⾃动化,这时我们就要使shell交互输⼊⾃动化了。

1 利⽤重定向重定向的⽅法应该是最简单的例:以下的test.sh是要求我们从stdin中分别输⼊no,name然后将输⼊的no,name打印出来[root@localhost ~]# cat test.sh#! /bin/bashread -p "enter number:" numberread -p "enter name:" nameecho you have entered $number, $name以下是作为输⼊的⽂件内容:[root@localhost ~]# cat input.data001balabala然后我们利⽤重定向来完成交互的⾃动化:[root@localhost ~]# ./test.sh < input.datayou have entered 001,balabala2 利⽤管道完成交互的⾃动化这个就是利⽤管道特点,让前个命令的输出作为后个命令的输⼊完成的也⽤上⾯例⼦举例:[root@localhost test]# echo -e "001\balalbala\n" | sh test.shyou have entered 001, balabala上⾯中的 "001\balabala\n" 中的“\n”是换⾏符的意思。

3 利⽤expectexpect是专门⽤来交互⾃动化的⼯具,但它有可能不是随系统就安装好的,有时需要⾃⼰⼿⼯安装该命令查看是否已经安装:rpm -qa | grep expect安装命令:yum install expect.x86_64以下脚本完成跟上述相同的功能[root@localhost ~]# cat expect_test.sh#! /usr/bin/expectspawn sh test.shexpect "enter number:"send "001\n"expect "enter name:"send "balabala\n"expect off注意:第⼀⾏是/usr/bin/expect,这个是选⽤解释器的意思,我们shell⼀般选的是 /bin/bash,这⾥不是spawn: 指定需要将哪个命令⾃动化expect:需要等待的消息send:是要发送的命令expect off:指明命令交互结束运⾏命令可⽤:expect expect_test.sh或把expect加⼊环境变量(测试未成功)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第5章 C-shell的交互功能
UNIX的shell
shell种类
B-shell:/bin/sh,是Stephen R. Bourne在贝尔实验室 开发的最早被普遍认可的UNIX的标准shell C-shell:/bin/csh,加利福尼亚大学的William N. Joy 在20世纪70年代开发,最初用在BSD2.0上 K-shell:/bin/ksh,贝尔实验室的David Korn在1986 年开发,是B-shell的超集,支持带类型的变量,数组 Bourne Again shell:/bin/bash,是LINUX上的标准 shell,兼容并扩展了B-Shell,吸收了C shell的某些特 点,命令行编辑非常方便
第5章 C-shell的交互功能
本章小节
5.1 5.2 5.3 5.4 5.5 5.6 UNIX的shell csh启动与终止 使用csh的历史机制 别名 csh提示符 csh的管道和重定向
第5章 C-shell的交互功能
5.1 UNIX的shell 5.2 csh启动与终止
第5章 C-shell的交互功能
第5章 C-shell的交互功能
UNIX的shell
用户shell
管理员在创建用户时,在/etc/passwd文件中 设置了用户的登录shell,用户登录后即进入注 册的shell。 某/etc/passwd文件的片断如下:
tian:x:1289:100::/usr/tian:/bin/csh jiang:x:1306:100::/usr/jiang:/bin/sh liang:x:2167:100::/usr/liang:/bin/ksh sun:x:1283:100::/usr/sun:/bin/sh
第5章 C-shell的交互功能
缓冲I/O和系统调用I/O编程示意图
标准输出 stdout,fd=1 标准输入 stdin,fd=0
程序
标准错误输出 stderr,fd=2
【例5-2I/O的标准输出和标准错误输出
第5章 C-shell的交互功能
第5章 C-shell的交互功能
输入输出重定向
输出重定向
4. >!文件,>&!文件:若文件已存在则强制覆盖掉原文件; 否则创建 5. >>!文件和>>&!文件:若文件不存在,强制创建;否则 追加到尾部 注:对于第1~3种重定向,csh的noclobber(不销毁) 开关会有影响。设置或取消noclobber开关的命令分别 是: set noclobber unset noclobber
第5章 C-shell的交互功能
别名机制举例
定义别名
alias dir "ls -flad" alias n "netstat -p tcp -s | head -10" alias r "netstat -rn" alias h "history" alias rm 'rm -i' alias p 'ping 202.143.12.189' alias rt 'traceroute 217.226.227.27
第5章 C-shell的交互功能
noclobber开关对重定向的影响
重定向 noclobber 开 >文件 >&文件 关 开 >>文件 >>&文件 关 文件状态 不存在 存在 不存在 存在 不存在 存在 不存在 存在 结果 创建 出错 创建 覆盖原文件 出错 追加 创建 追加
第5章 C-shell的交互功能
UNIX的shell
shell的主要功能
作为交互式的命令解释器,是用户与系统之间的接口
支持文件名替换,命令替换,变量替换 支持管道和重定向操作
有流程控制的内部命令,支持程序设计
内部命令与外部命令
内部命令:在shell内部实现的命令 外部命令:shell之外用程序文件实现的命令 外部命令执行时需要搜寻程序文件并装入执行,因此 运行效率不如内部命令
第5章 C-shell的交互功能
5.6 csh的管道和重定向
第5章 C-shell的交互功能
概述
管道
是进程之间通信的一种机制,shell利用此机制在命令 之间传递输入和输出。管道操作符用竖线|表示,作用 是使竖线前面的命令输出成为竖线后面的命令输入。
重定向
shell改变了它所执行的进程拥有的文件描述符,主要 是标准输入/输出/错误描述符,以便使进程原来的输入 输出对象切换到新的对象
cc -c try.c -o try |& more
第5章 C-shell的交互功能
管道示意图
cmd1 | cmd2
cmd1 |& cmd2
管道和重定向实际上是shell利用进程之间的父子 关系实现的,第7章详述之
第5章 C-shell的交互功能
缓冲I/O和系统调用I/O
程序操作文件的两种模式
标准的缓冲I/O方式:这种方式间接利用系统调用实现 有缓冲的标准输入输出/错误输出,它是由标准I/O库函 数提供的,库预定义变量stdin、stdout和stderr代表标 准输入输出/错误输出文件I/O流给程序员直接使用。 系统调用的方式:shell通过系统调用打开标准输入输 出/错误输出文件描述符,其值分别为0,1,2。由于父 子进程文件描述符的继承关系,此种编程方式下这三 个描述符可直接使用,无需打开。
第5章 C-shell的交互功能
csh的启动与终止
启动
csh的启动方法有两种:作为注册shell和直接执行命 令csh。前者在启动后将自动执行用户主目录中 的.cshrc和.login脚本程序,而后者仅执行.cshrc,其目 的是初始化执行环境。 不同用户有不同的主目录和初始化脚本程序,因此可 以安排执行不同的初始化操作
重定向示意图
> filename
>& filename
第5章 C-shell的交互功能
管道
cmd1 | cmd2
把命令cmd1的stdout管道成cmd2的stdin ps -ef | grep liang
cc -c try.c -o try | more
cmd1 |& cmd2
把cmd1的stderr合并到stdout然后管道成 cmd2的stdin
输入输出重定向
输入重定向
<filename 从文件filename中输入
输出重定向
1. >文件:把stdout重定向到一个文件中,不影响stderr 仍然在终端输出
2. >&文件:把stderr合并到stdout,再重定向到一个文 件中。 3. >>文件或>>&文件:若文件不存在,则创建;若文件 已存在则追加到文件尾。
第5章 C-shell的交互功能
别名机制
csh的别名机制
可以为经常使用的命令取一个别名,以提高输入效率 或便于记忆。例如,可以为经常使用的命令取单字符 的别名,也可以为不便记忆的命令取含义明确的名字。 定义别名 alias 别名 替换命令 (不带参数则显示当前别名表) 取消别名 unalias 别名
终止
作为注册的csh终止时,要执行用户主目录中 的.logout退出脚本
第5章 C-shell的交互功能
5.3 使用csh的历史机制 5.4 别名 5.5 csh提示符
第5章 C-shell的交互功能
历史表
csh的历史机制
将最近一段时间内输入的命令保存起来,以便重复使 用或作少量后继续使用,避免了将命令重新输入的麻 烦。 前后键入的命令按顺序存于历史表,编号递增。 历史表大小有限,其上限值保存在变量history中,可 用命令set history=n设定。超出限制时,按FIFO的原 则抛弃命令 使用内部命令history可查看历史表 引用历史表:见[表5-1] C-shell历史替换的方法
给别名传递参数
简单传递:dir ~ 复杂传递:【例5-1】 给别名命令传递参数的方法
第5章 C-shell的交互功能
csh提示符
csh的提示符由csh的变量prompt控制
prompt变量值(是一个字符串)中的!,在实 际显示时以命令号代替。 set prompt="[\!]%" 在!前加\以取消csh对!的特殊解释,实际上 变量prompt的值为[!]%串
相关文档
最新文档