linux学习贴

linux学习贴

查找文件名并拷贝到指定文件夹

find -name *.pl | xargs cp  ara/

解压大全

tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2 //解压 tar.bz2
tar –xZvf file.tar.Z //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip

运行字符串

我今天知道,原来shell里的变量命名“=”很有讲究

#!/bin/bash
#运行一串字符串的脚本

direct="cctv"
#注意=左边不要有空格

判断文件是否存在

#!/bin/bash
#判断文件是否存在
PATH="./shell.sh"
if [ ! -f "$PATH" ];then
        echo "path not found"
else
        echo "path exist"
fi
#判断文件夹是否存在
PATH="./yang"
if [ ! -d "$PATH" ];then
        echo "path not found"
else
        echo "path exist"
fi

详细参数

-e 判断$a是否存在
-d 判断$a是否存在,并且为目录
-f 判断$a是否存在,并且为常规文件
-L 判断$a是否存在,并且为符号链接
-h 判断$a是否存在,并且为软链接
-s 判断$a是否存在,并且长度不为0
-r 判断$a是否存在,并且可读
-w 判断$a是否存在,并且可写
-x 判断$a是否存在,并且可执行
-O 判断$a是否存在,并且属于当前用户
-G 判断$a是否存在,并且属于当前用户组
-nt 判断file1是否比file2新  [ "/usr/local/src/file1" -nt "/usr/local/src/file2" ]
-ot 判断file1是否比file2旧  [ "/usr/local/src/file1" -ot "/usr/local/src/file2" ]

但是不能模糊匹配文件和文件夹,它可能把*号当做文件夹名了。我也正在寻找合适的方法模糊匹配文件夹,各位知道请留言告诉我。
我找到了方法

模糊判断文件是否存在

#!/bin/bash
files=$(ls ./results/*type_0a.fa 2> /dev/null | wc -l);

if [ "$files" != "0" ] ;then  #如果存在文件

echo "this works"

fi

linux的字符串拼接

a="123"
b="456"
c="a""b"
echo $c
#c="123456"
#和其他语言不一样,不用+或者&

执行字符串

command="ls -al"
#方法一
$command
#方法二
eval `ls -al`
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值