关于shell

sudo -s 进入自己的目录下
/data/webserver/php/bin/php xxx.php 运行xxx.php 文件
ps 查看进程

fg 把后台运行的程序。前台显示出来
ctrl+c 停止程序
sort aa.txt | uniq > bb.txt 把aa文件 排序 去重 然后重定向到 bb文件

base 进入shell根目录 就是前面有root之类的关键字

批量修改权限。。chmod -R 777 aaa    -R 必须大写

用awk命令计算文件中某一列的总和:
awk 'BEGIN{sum=0}{sum+=$1}END{print sum}' data.txt
df -h 查看磁盘空间

在shell里面跑程序。。一定要写全路径
合并文件 more aa.txt >>new.txt  more bb.txt >> new.txt
diff 去重复
查看文件夹下 所有的文件数量 ls -lR|grep "^-"|wc -l



sort -T /data1/ -k1,1 -k2,2n tmp.log>tmp.sort  /按照第一列 第二列排序
/-k1,2 是按照第一列的第二个字符排列
/-k1,1 是按照第一整列排序


cat a.txt |wc -l 查看文件行数


查看某文件夹下文件夹的个数,包括子文件夹里的。ls -lR|grep "^d"|wc -l

 
shell下进入mysql界面 /data/mysql-5.1.45/bin/mysql -uroot -proot

暂停一个命令后 bg 能让它在继续运行。


得到前一天的时间 date -v -1d +%Y%m%d

  cat xxx | head -n 10000 | awk ....  //得到文件的前一万行

查看关于某一组的进程  ps -aux | grep yesterday      产看关于yesterday 这进程的信息 。。


取得上一个小时的时间 date=`date -v-1H +%Y%m%d%H`


查看一个文件夹的大小 du -chs



tar -zxvf filename.tar 解压文件时 只能解压一个 文件。。当有多个时 要写循环
for f in filename.tar
do  
tar -zxvf f
done



ls -Ftr|grep /
这个可以把文件夹倒叙排列
可以用:
ls -Ftral|grep /
查看详细的信息




  /data/mysql-5.0.51/bin/mysql -h192.168.181.45 -uweather -pweather -P 3306     
登陆内网的mysql


首先将file1 file2排序,再使用comm file1 file2。
这个命令将输出三列。第一列是仅在file1中出现的文本;第二列是仅在file2中出现的文本;第三列是两个文件都出现的文本。

comm 可以带 -1 -2 -3 的参数。加上那个那列就不显示。

结论:
1、只在一中出现的;  comm -23 file1 file2
2、只在二中出现的;  comm -13 file1 file2
3、既在一中出现也在二中出现的。 comm -12 file1 file2



tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)
.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz压缩:tar zcvf FileName.tar.gz DirName
.bz2解压1:bzip2 -d FileName.bz2解压2:bunzip2 FileName.bz2压缩: bzip2 -z FileName.tar.bz2解压:tar jxvf FileName.tar.bz2压缩:tar jcvf FileName.tar.bz2 DirName
.bz解压1:bzip2 -d FileName.bz解压2:bunzip2 FileName.bz压缩:未知.tar.bz解压:tar jxvf FileName.tar.bz压缩:未知
.Z解压:uncompress FileName.Z压缩:compress FileName.tar.Z解压:tar Zxvf FileName.tar.Z压缩:tar Zcvf FileName.tar.Z DirName

.zip解压:unzip FileName.zip压缩:zip FileName.zip DirName
.rar解压:rar x FileName.rar压缩:rar a FileName.rar DirName
rar请到:http://www.rarsoft.com/download.htm 下载!解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):[root@www2 tmp]# cp rar_static /usr/bin/rarhttp://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下载!>解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):[root@www2 tmp]# cp lha /usr/bin/http://sourceforge.net/projects/sex下载!解压后请将sEx拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):[root@www2 tmp]# cp sEx /usr/bin/
.lha解压:lha -e FileName.lha压缩:lha -a FileName.lha FileName
lha请到:.rpm解包:rpm2cpio FileName.rpm | cpio -div.deb
解包:ar p FileName.deb data.tar.gz | tar zxf .tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio.rpm .deb .slp .arj
.rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*压缩:sEx a FileName.* FileName
sEx只是调用相关程序,本身并无压缩、解压功能,请注意!sEx请到:
gzip 命令
减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。

gzip 是在 Linux 系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

语法:gzip [选项] 压缩(解压缩)的文件名   
该命令的各选项含义如下:

-c 将输出写到标准输出上,并保留原有文件。-d 将压缩文件解压。-l 对每个压缩文件,显示下列字段: 压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。-t 测试,检查压缩文件是否完整。-v 对每一个压缩和解压的文件,显示文件名和压缩比。-num 用指定的数字 num 调整压缩的速度,-1 或 --fast 表示最快压缩方法(低压缩比),-9 或--best表示最慢压缩方法(高压缩比)。系统缺省值为 6。
指令实例:
gzip *% 把当前目录下的每个文件压缩成 .gz 文件。
gzip -dv *% 把当前目录下每个压缩的文件解压,并列出详细的信息。
gzip -l *% 详细显示例1中每个压缩的文件的信息,并不解压。
gzip usr.tar% 压缩 tar 备份文件 usr.tar,此时压缩文件的扩展名为.tar.gz。

Shell脚本面试题是与Linux Shell相关的问题,以下是几个常见的面试题及其解答: 1. 什么是Shell脚本? Shell脚本是一种用于自动化执行任务的脚本语言。它可以通过编写命令和脚本来实现自动执行各种任务,包括文件操作、系统管理和软件安装等。 2. Shell脚本的文件扩展名是什么? Shell脚本的文件扩展名通常是.sh。 3. 如何指定一个脚本要使用的Shell类型? 可以使用shebang(井号加叹号)来指定脚本要使用的Shell类型。例如,#!/bin/bash表示脚本使用Bash Shell。 4. 如何将一个Shell脚本变成可执行文件? 可以使用chmod命令将Shell脚本文件设置为可执行文件。例如,使用chmod +x script.sh命令将script.sh文件设置为可执行文件。 5. 如何在Shell脚本中获取命令行参数? 可以使用特殊变量$1、$2、$3等来获取命令行参数。$1表示第一个参数,$2表示第二个参数,依此类推。 6. 如何在Shell脚本中进行条件判断? 可以使用if语句进行条件判断。例如: ``` if [ 条件 ]; then # 如果条件成立执行的代码 else # 如果条件不成立执行的代码 fi ``` 7. 如何在Shell脚本中进行循环操作? 可以使用for循环或while循环进行循环操作。例如: ``` # for循环 for 变量 in 列表; do # 循环体 done # while循环 while 条件; do # 循环体 done ``` 8. 如何在Shell脚本中读取文件内容? 可以使用while循环结合read命令来逐行读取文件内容。例如: ``` while read line; do # 处理每行内容的代码 done < 文件名 ``` 9. 如何定义和使用Shell脚本中的函数? 可以使用function关键字定义函数,然后通过函数名调用函数。例如: ``` function 函数名 { # 函数体 } # 调用函数 函数名 ``` 10. 如何在Shell脚本中进行字符串操作? 可以使用字符串操作符来进行字符串的拼接、替换等操作。例如: ``` # 字符串拼接 str="Hello" str2="World" result=$str$str2 # 字符串替换 str="Hello World" result=${str/World/John} ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值