Linux 命令
文件
mkdir 建立文件夹
rmdir 删除文件夹
rm 删除文件 rm -f 强删 rm -r 删除子目录文件
重命名和文件移动
mv name newname
无法修改目录 给目录赋权限的一种方法
mv file /ogsapp/tmp/lyn_duizhang 把文件或文件夹移动到后面目录中
批量重命名 rename 0190190 19_0190190 * 0190190为统一的头 所有文件都一样 加上19_
解压
.tar tar -xvf 文件名
压缩 tar -cvf 83_yy_11264.tar *20141104*.z.gz 按时间压缩
.zip unzip 文件名 gzip -d 文件名
.sn unipack -i 0790000GJYY0079000000201410231525013091.14.n.sn -o a.txt -d
.gz gunzip *.gz -f gzip -d 文件名
#!/bin/bash -f exec 2>/dev/null ls -l $1/ |tr -d ''|awk '{print $9}' > c.txt cat c.txt |while read LINE do len=`expr length $LINE` len1=`expr $len - 3`; if [ ${LINE:$len1:$len} = ".sn" ];then cd $1/ unipack -i $LINE -o ${LINE:0:len1} -d rm -f $LINE cd .. fi if [ ${LINE:$len1:$len} = ".gz" ];then cd $1/ gzip -d $LINE cd .. fi done rm c.txt
这是sn.sh 执行脚本 ./sn.sh 压缩文件的目录 会把压缩文件删了
上传 下载
rz 上传 会弹出对话框 选择文件 传到当前目录
sz 文件名 将当前目录下的文件名文件 下到CRT软件指定目录

ftp 命令
put 当前路径下文件名 (put到另一侧的路径下)
get 要得到的文件名 (get的文件在另一侧的路径下)
e.g. 132.35.288.11在/ogsapp/tmp 下 ftp 134.99.17.101 cd 到 /ogsapp/data/ 下 get文件名 就到 了132.35.288.11在/ogsapp/tmp 下,想进入132.35.288.11在/ogsapp/tmp目录下的其他目录 lcd命令 lcd weiguoyuan 就修改成/ogsapp/tmp/weiguoyuan
批量获取文件
1.bin
2.prompt
3.mget *.gz
复制
cp 文件名 到的文件夹的绝对路径
cp -r * 文件名 到的文件夹的绝对路径 如果要复杂的文件含有文件夹
cp ./*/文件名* 到的文件夹的绝对路径 要复制的文件在当前路径下的不同目录下
cp a.c b.c 把 a.c 的内容 cp 到 b.c 中
scp -r showlog@133.128.63.14:/ogsapp/data/org/19/in_data/201312/* ./ 用scp命令取到当前文件夹
scp ./ SMS1 ogsapp@133.128.63.14:/ogsapp/data/ 用scp命令考到指定文件夹
查找
find -name "文件名"
find ./|wc 查看当前目录下文件数
find . -name 'my*' -ls 查询当前目录下my开头的文件并显示
find . -type f -mmin -10 搜索过去10分钟内更新的文件 (不加 -type f 目录也找)+10 代表11分钟及以外的文件 10代表10-11分钟的文件
find / -perm +7000 -exec ls -l {} /; -exec 是将find的结果用于其他命令,;为-exec的结束符,由于;在bash中有其他含义 加/来转换意思,{}为find的结果
locate name 定位含有name字符串的位置
grep in *.c 查找 ls -l | grep in
grep 02443189581 *.txt | grep 20140910103408|grep 20140910103420 多个条件并列查询
find ./ -cmin -40 -name "*0190190GJSJ0019048600*"|xargs -i cp {} /ogsapp/tmp/lyn_duizhang/GPRS3112/yilun 查找40分钟以内文件
查看文件大小
du -sm * | sort -n 查看文件大小并排序
退出 注销 关机
exit layout shutdown
用户切换
ctrl+alt+fn n.....1,2,3 分别代表不同用户
启动图形界面
startx -- :1~n n同上
查看文件
more name ls -la|more 分屏显示文件
空格 下一页 回车 下一行 /字符串 在余下文档查找该字符串的位置 :f 显示文件名和所在行数 q 退出 b 向上翻页
cat name
cat x1.c x2.c 以显示方式连接
cat x1.c x2.c > x3.c 将x1 x2 连接存到x3中 >为重导符
cat x1.c x2.c >> x3.c 追加x3.c 存在的话 将x1 x2 追加到 x3 后
cat * > hebing.txt 合并文件到hebing.txt
赋权限
chmod 777 * 777代表 第一个7为u 用户文件拥有组 第二个7代表g同组用户 第三个代表o其他用户 * 目录下文件
ugo
7 为 rwx 当rwx权限都有时为 111 即为7 只有读权限为100 为1
chown -R will:will /usr/local/hadoop 修改目录包括目录下得文件目录的访问修改权限 修改/usr/local/hadoop will用户可访问修改
进程管理
pl 显示进程
ps name 显示进程
kill name 杀进程
pstree 查看进程树
用户管理
#下 useradd user1 添加用户
passwd user1
userdel user1
userdel -r 连同用户目录都删
定时任务调度(定时器)
crontab * * * * * * * 分别代表分钟,小时,日期,月份,星期,调动的程序或命令
crontab 0 */2 * * * /shin/service httpd restart 整点没2个小时 启动apache服务
通配符



cmd1;cmd2 1执行完 执行2
*
? 代表一个字符
-ls&&rm 第一个为真 验证第二个 都为真执行
-ls||rm 第一个为真就执行 但只执行第一个
-ls;rm 不管真假都执行
ls | */* -1 |wc 查询 一月总文件数
cd - 返回进入当前目录之前的目录
移动文件
mv */* ./ 将目录下的子目录中所有的文件移动到现在目录下,如将该月下的1~31号的文件移动到该月下
建立软链接
ln -s /ogsapp/tmp/weiguoyuan/114new/files/文件名 将该文件的软链接建立在当前目录下
ln 建立硬连接
ls -1|xargs -i ln -s /ogsapp/tmp/weiguoyuan/GGZNW/files/{} /ogsapp/data/rev/201312021528/{} 批量建立软链接 在文件所在目录下执行
查找文件并复制
find ./|grep jf|grep 0190190GJDX00190477JF|xargs -i cp {} /ogsapp/tmp/weiguoyuan//target
显示当前目录
pwd
dd=`pwd` 不是单引号
$pwd 去当前目录
字符串截取
grep
grep "~1086" source.log 显示含有10086 的行
grep -c "~1086" source.log 显示含有10086的行数
cut -d '分隔符' -f 第几个分隔符 以分隔符截取 ps /bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:/usr/games:
[root@www ~]# echo $PATH | cut -d ':' -f 5
# 如同上面癿数字显示,我们是以『 : 』作为分隑,因此会出现 /usr/local/bin
cut -c 位数数 已位数截取 ps 将 export 输出癿讯息,叏得第 12 字符以后癿所有字符串
[root@www ~]# export
declare -x HISTSIZE="1000"
declare -x INPUTRC="/etc/inputrc"
declare -x KDEDIR="/usr"
declare -x LANG="zh_TW.big5"
.....(其他省略).....
# 注意看,每个数据都是排列整齐癿输出!如果我们丌想要『 declare -x 』时,
# 就得这么做:
[root@www ~]# export | cut -c 12-HISTSIZE="1000"
INPUTRC="/etc/inputrc"
KDEDIR="/usr"
LANG="zh_TW.big5"
.....(其他省略).....
# 知道怎么回事了吧?用 -c 可以处理比较具有格式癿输出数据!
# 我们还可以挃定某个范围癿值,例如第 12-20 癿字符,就是 cut -c 12-20 等
查看磁盘空间
df
df -h /目录查询目录空间
du -h 查询当前目录下的空间
查看进程
ps -au
pps
将进程放到后台执行
./run.sh &
setsid ./run.sh
nohup /root/start.sh &
切换用户登录
su - ogsapp 回车 密码
man 查看命令
man 命令 q退出

排序
sort
计数
wc -l 行数
wc -w 字数(英文字母)
wc -m 字符数
替换文本中的内容
sed 行处理
nl source.txt|sed '2,5c NO' 将source.txt中2-5行替换成NO nl为查看文本命令
nl source.txt|sed '2,5d' 删除2-5行


awk 字段处理
[tstogshost07:showlog]/ogsapp/data/rev>last -n 5 取前5行
root pts/1 192.168.1.100 Tue Feb 10 11:21
root pts/1 192.168.1.100 Tue Feb 10 11:21
root pts/1 192.168.1.100 Tue Feb 10 11:21
root pts/1 192.168.1.100 Tue Feb 10 11:21
root tty1 Fri Sep 10 11:21
[tstogshost07:showlog]/ogsapp/data/rev>last -n 5|awk '{print $1 "\t" $3}'
root 192.168.1.100
root 192.168.1.100
root 192.168.1.100
root 192.168.1.100
root Fri
[tstogshost07:showlog]/ogsapp>cat /etc/passwd|awk 'BEGIN {FS=":"}$3<10{print $1 "\t" $3}'
root 0
showlog 1
awk -F, '$4=="" {print}' a.txt 分隔符查找文件中分隔符第四列为空的记录
awk -F, '$4=="" {print $5$6}' a.txt 输出5和6列
awk -F, 'substr($0,189,3)=="376" {print substr($0,189,3)}' a.txt 截取定长的
快捷键
ctrl + z 暂停执行的进程 放入后台暂停
ctrl + l 清屏
ctrl + r 搜索所输入的命令历史
命令重命名 设置命令
alias 可以在执行命令前 看看root用户将 命令设置成啥样了
一些常识
在vi man中 / 可以查找 /+要查找的内容
n 向下查找
N 向上查找
查看网络
ifconfig
获得root权限
sudo -su
su root
查找安装得工具
rpm -qa | grep java
posted on 2013-09-11 16:16 weiguoyuan 阅读(359) 评论(0) 收藏 举报
浙公网安备 33010602011771号