Linux学习 -- Shell面试题练习

1、使用Linux命令查询file1中空行所在的行号

awk  '/^$/ {print NR}' file1

// 使用正则表达式^$ 来表示空行

2、使用Linux命令计算文件a.txt的第二列的和并输出

        张三 40

        李四 50

        王五20

cat a.txt | awk -F " " '{sum+=$2} END {print sum}'

 

3、Shell脚本中如何检查一个文件是否存在,,如果不存在如何处理?

#!/bin/bash        

if [ -f file.txt ]; then

        echo "文件存在"

else

        echo "不存在"

fi

#也可以将file换成$1,来将文件名称传进去,完成判断。

 

4、用Shell写个脚本,对文本中无序的一列数字进行排序

sort -n test.txt | awk  '{a+=$0;print $0} END {print "SUM="a}' 

//排序的话,前面的sort 就够了,后面是输出累加的总数。

5、请用Shell脚本写出查找当前文件夹/home下所有的文本内容中包含有字符”shen“的文件名称。

grep  -r  "shen"  /home | cut -d ":"  -f 1

5.shell中单双引号区别

  1. 单引号不取变量值;双引号取变量值
  2. 反引号`,执行引号中命令
  3. 单引号内部嵌套双引号,不取出变量值;双引号内部嵌套单引号,取出变量值

6、Linux中的环境变量的解释

修改/etc/profile文件

用来设置系统环境参数,比如$PATH/$HOME等

其中的环境变量是对系统内所有用户生效

使用bash命令,需要source  /etc/profile一下

修改~/.bashrc文件

针对某一个特定的用户,环境变量的设置只对该用户自己有效

使用bash命令,只需要以该用户身份运行命令行就会读取该文件

把/etc/profile里面的环境变量追加到~/.bashrc目录

cat /etc/profile >> ~/.bashrc

说明

登录式Shell,采用用户名登录,会自动加载/etc/profile

非登录式Shell,采用ssh登录,不会自动加载/etc/profile,会自动加载~/.bashrc

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值