1. 设置环境变量 HISTSIZE , 使其能够保存10000条命令历史。

答: vim /etc/profile,搜索到HISTSIZE,将1000改为10000,然后保存退出,再执行  source /etc/profile使其生效。

[[email protected] ~]# echo $HISTSIZE

1000

[[email protected] ~]# HISTSIZE=10000 #临时修改

[[email protected] ~]# echo $HISTSIZE

10000

[[email protected] ~]# cat /etc/profile |grep HISTSIZE

HISTSIZE=1000

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

[[email protected] ~]# vim /etc/profile #永久修改

HISTSIZE=10000

Esc:wq

[[email protected] ~]# source /etc/profile

[[email protected] ~]# echo $HISTSIZE

10000

[[email protected] ~]#

2. 为什么如果这样设置PS1 (PS1="[\[email protected]\h \W]\$ ")  显示的结果和我们预想的不一样,那要如何设置才能恢复原来默认的?

答: Shell中双引号保留原有字符的特殊含义,单引号可以去掉原有字符的特殊含义。所以我们有两种改法:(1)PS1="[\[email protected]\h \W]\\$ "

(2)PS2=‘[\[email protected]\h \W]\$ ‘

3. 想办法把当前目录下的文件的文件名中的小写字母全部替换为大写字母。

答:使用脚本来完成该目标:

[[email protected] ~/test 01:04 #10]# vim lower2Upper.sh

#!/bin/sh

for i in `ls`

do

mv $i `echo $i |tr ‘[a-z]‘ ‘[A-Z]‘`

done

Esc:wq

[[email protected] ~/test 01:04 #10]# /bin/sh lower2Upper.sh

4. 使用sort以":"为分隔符,对/etc/passwd文件的第5段排序。

答:sort -t: -k5 -n /etc/passwd #按第5段排序

5. 使用cut以":"为分隔符,截出/etc/passwd的第三段字符。

答:cut -d: -f3 /etc/passwd #截出第三段

6. 简述这几个文件的作用: /etc/profile, /etc/bashrc, .bashrc, .bash_profile.

答:这几个都是配置文件。

/etc/profile系统级的配置文件,其中变量对所有用户都有效;

/etc/bashrc系统级的bash变量配置文件,任何用户运行bash则会读取其中内容。

.bashrc:用户级的bash相关变量配置文件,只对当前用户有效,无需登录,主要通过该用户运行命令行就会读取该文件。

.bash_profile用户级的变量配置文件,只对当前用户生效,在用户登录后才读取。

7. export 的作用是什么?

答:声明一个变量,使其进入子shell后也生效

8. linux下自定义变量要符合什么样的规则呢?

答:自定义变量的格式为 varname=value, 等号两边不能有空格;变量名只能由字母、数字和下划线组成,且不能以数字开头;原则上自定义变量要小写,不能与系统系统变量、函数名、关键字等相同;当变量内容带有特殊字符(如空格)时,需要加上单引号;变量内容中本身带有单引号,需要用到双引号;如果变量内容中需要用到其他命令运行结果则可以使用反引号;

9. 如何把要运行的命令丢到后台跑?又如何把后台跑的进程给调到前台?

答:运行之前,可用“命令 &”直接在后台运行;正在运行的命令,可以使用jobs查看其PID,然后使用"bg PID"命令将其调到后台运行;也可以使用“fg PID”将其调到前台运行。

10.  列出当前目录下以"test"开头的文件和目录。

答:ls -ld test*

11.  如何把一个命令的输出内容不仅打印到屏幕上而且还可以重定向到一个文件内?

答:ls -ld test* |tee ls.log

12. 假如有个命令很长,我们如何使用一个简单的字符串代替这个复杂的命令呢?请举例说明。

答:可以使用别名alias:alias ls=‘ls --color=auto‘;

也可以使用变量:myls=‘ls --color=auto‘,调用时只需加上$符即可:$myls

13. 我如何实现这样的功能,把一条命令丢到后台运行,而且把其正确输出和错误输出同时重定向到一个文件内?

答:vmstat 1 > /tmp/1.log 2>&1 &

14. 如何按照大小(假如按照10M)分隔一个大文件,又如何按照行数(假如10000行)分隔?

答:split -b 10M filename

split -l 10000 filename

15. 做实验,搞明白 ; && || 这三个符号的含义。

答:(1);结束一条命令,可以用来将多条命令写在一行中

(2)&&逻辑与,前面语句为真才执行后面语句,前面为假不执行后面语句

(3)||逻辑或,前面语句为假才执行后面语句,前面为真不执行后面语句

16. 如果只想让某个用户使用某个变量如何做?

答:可以以该用户身份编辑其家目录下的.bashrc文件,加入一行 var=10,保存退出后执行

source .bashrc使其立刻生效即可。

17. 使用哪个命令会把系统当中所有的变量以及当前用户定义的自定义变量列出来?

答:env只能列出系统变量,set不仅能列出系统变量,还能列出用户变量。

时间: 2024-08-02 01:50:26

1. 设置环境变量 HISTSIZE , 使其能够保存10000条命令历史。的相关文章

Linux设置环境变量方法(export PATH)

1.动态库路径的设置 Linux下调用动态库和windows不一样.linux 可执行程序是靠配置文件去读取路径的,因此有些时候需要设置路径 具体操作如下 export LD_LIBRARY_PATH=/home/.....(动态库的目录) 不过这种设置方法只是在当前的session中有效 你可以修改配置文件实现任何session都有效 2.环境变量的设置 一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量.例如我的mips-linux-gcc编译器在"/opt/a

CentOS7设置环境变量

目录 一.环境变量的概念 1.环境变量的含义 2.环境变量的分类 3.Linux环境变量 二.常用的环境变量 1.查看环境变量 2.常用的环境变量 三.设置环境量 1.系统环境变量 2.用户环境变量 3.环境变量脚本文件的执行顺序 四.重要环境变量的详解 1.PATH环境变量 2.LANG环境变量 3.LD_LIBRARY_PATH环境变量 4.CLASSPATH 五.环境变量的生效 六.应用经验 七.版权声明 一.环境变量的概念 1.环境变量的含义 程序(操作系统命令和应用程序)的执行都需要运

linux设置环境变量

 显示环境变量HOME $ echo $HOME /home/redbooks 2. 设置一个新的环境变量hello $ export HELLO="Hello!" $ echo $HELLO Hello! 3. 使用env命令显示所有的环境变量 $ env HOSTNAME=redbooks.safe.org PVM_RSH=/usr/bin/rsh Shell=/bin/bash TERM=xterm HISTSIZE=1000 ... 4. 使用set命令显示所有本地定义的She

Linux下设置环境变量

setenv(set environment variable) 功能说明:查询或显示环境变量.语 法:setenv [变量名称][变量值]补充说明:setenv为tsch中查询或设置环境变量的指令. 对于bash shell关 于环境变量命令介绍:1.echo 显示某个环境变量值 echo $PATH2.export 设置一个新的环境变量 export HELLO="hello" (可以无引号)3.env 显示所有环境变量4.set 显示本地定义的shell变量5.unset 清除环

Java为什么要设置环境变量、JAVA_HOME

1. 为什么要说这个问题? 想起来两年前刚学习Java时,被要求先要设置环境变量,自然不解,随后网上找答案. 现在想来感觉当时看到的答案都是神神叨叨,含糊不清,没有几个说的明明白白的.当然也有可能是当时的我没看明白吧- 总之,相信我,看了我的博客,你不用再找别的地方了! 2. 环境变量 环境变量 就是英文直译:Environment Variable . 变量 知道吧? 对,就是可以随意给其赋值的一个存储单元. 那么环境 呢? 首先,你把操作系统当做是一个最大的软件,其它软件如Office.LO

Linux程序写入oralce数据库中文显示为问号??? 代码实现设置环境变量!

Linux程序写入oralce数据库中文显示为问号??? 1.问题介绍 根本原因是字符集的问题,是数据库的字符集和写入程序的linux系统的字符集不一致导致: 但是用export NLS_LANG="SIMPLIFIED CHINESE"_CHINA.ZHS16GBK添加环境变量,或者在.bash_profile文件中添加这个环境变量,或者在/etc/profile文件中添加这个环境变量,用source 命令使其生效,后写入oralce数据库的中文还是问号?,接着有重启了系统,重启了服

设置环境变量的方法

执行脚本 使用.和source执行脚本,会加载脚本中的变量,并在脚本结束后脚本中的变量(包括函数)值在当前shell中依然存在,而sh和bash则不行 设置环境变量的方法(三种) 退出当前用户就会丢失 第一种: export XJHADD=caoxiroad 第二种: declare -x XJHADD=caoxiroad 第三种: XJHADD=caoxiroad;export NAME 定义全局环境变量 永久生效 在/etc/profile 文件最后一行添加 export XJHADD=ca

在Ubuntu下设置环境变量

在Ubuntu中有如下几个文件可以设置环境变量 /etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. /etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量 ~/.profile:在登录时用到的第三个文件是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他

Ubuntu 设置环境变量

概述 Linux 系统包含两类环境变量:系统环境变量和用户环境变量.系统环境变量对所有系统用户都有效,用户环境变量仅仅对当前的用户有效.以下是在 Ubuntu 12.04 系统中的设置. 用户环境变量通常被存储在下面的文件中: ~/.profile ~/.bashrc 系统环境变量一般保存在下面的文件中: /etc/environment /etc/profile /etc/bash.bashrc 添加环境变量 临时设置环境变量: 查看当前的环境变量 $echo $PATH /usr/clang