0%

警告:即使是更高级别的文件复制功能(shutil.copy(), shutil.copy2())也无法复制所有文件元数据。

在POSIX平台上,这意味着文件所有者和组以及ACL都会丢失。在Mac OS上,不使用资源分支和其他元数据。这意味着资源将丢失,文件类型和创建者代码将不正确。在Windows上,不会复制文件所有者,ACL和备用数据流。

linux shell查看文件的元数据 metadata

阅读全文 »

文件修改

cmp diff 对比文件差异
diffstat 读取diff的输出结果
file 查看文件类型
find(直接在文件中查找)locate(在数据库中查找) 查找文件
updatedb 更新locate数据库
indent 格式化C语言代码
cut 截取指定范围的字符显示
ln 建立软链接和硬链接
cat(适合小文件,大文件打开慢) less(适合大文件,打开快,可以随意翻页) more(适合大文件,打开慢,只能向后翻页) 查看文件
mktemp 建立缓存文件
mv 移动文件或者目录
od(不熟) 指令会读取所给予的文件的内容,并将其内容以八进制字码呈现出来
paste 合并文件
patch 命令用于修补文件
rcp 复制远程文件到本地
scp 复制本地文件到远程
$ scp local_file remote_username@remote_ip:remote_folder
rm 删除文件或者目录
split 将单个文件分割成多个文件
tee 将用户输入的内容保存到文件中
tmpwatch 删除缓存文件(可以指定条件)
touch 修改文件或目录时间属性,如果文件不存在,则会创造文件
umask (不熟)命令指定在建立文件时预设的权限掩码
cp 复制文件或者目录
which 在环境变量$path设置的目录中,查找对应命令的执行文件位置
$ which bash

/bin/bash

阅读全文 »

mysql8基础操作

1.union(去重,需要更多的性能)和union all(不会去重,速度快)查询结果对比

1
2
SELECT * FROM A UNION SELECT * FROM B
SELECT * FROM A UNION ALL SELECT * FROM B
阅读全文 »

1.if….else流程控制

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/bash

# shell 流程控制

# if else 示例
number1=12
number2=23
if [ $number1 == $number2 ]
then
echo "number1和number2相等"
elif [ `expr 36 + 2` == 38 ]
then
echo "36 + 2相加的结果为38"
else
echo "number1和number2不相等"
fi

2. for … in …流程控制

阅读全文 »

1.echo 使用大全

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash

# echo为输出命令

# 普通字符
echo '1111'

# 转义
echo "\"这是一段话'\""

# 变量
kk='1'
echo "$kk"

# 换行
echo -e "ok! \n" # -e 开启转义,使\n换行生效
echo "It is OK"

# 不换行
echo -e "not ok! \c" # -e 开启转义,使\c换行生效
echo "It is not ok!"

# 输出字符到文件
# 如果文件已存在,会覆盖
echo "it is not ok in text" > myfile.txt

# 单引号不转义或获取变量
name='admin'
echo '$name \n'

# 执行命令
echo `date`

阅读全文 »

1.加减乘除,取余,判断相对和不相等

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# 相加
val=`expr 2 + 2`
echo "2+2结果为:$val"

# 减法
val=`expr 8 - 3`
echo "8-3结果为:$val"

# 乘法
val=`expr 3 \* 4`
echo "3x4结果为:$val"

# 除法
val=`expr 9 / 3`
echo "9÷3结果为:$val"

# 取余数
val=`expr 11 / 3`
echo "11÷3的余数为:$val"

# 赋值
exp1=12
exp2=10
val=`expr $exp1 = $exp2`
echo "赋值为:$val"

# 判断相等,相等返回true
exp1=12
exp2=10
val=`expr $exp1 == $exp2`
echo "两值测试是否相等:$val"

# 判断是否不想动,不想等返回ture
exp1=12
exp2=10
val=`expr $exp1 != $exp2`
echo "两值测试是否不相等:$val"

# [Running] bash "ssh/1.sh"
# 2+2结果为:4
# 8-3结果为:5
# 3x4结果为:12
# 9÷3结果为:3
# 11÷3的余数为:3
# 赋值为:0
# 两值测试是否相等:0
# 两值测试是否不相等:1

2.关系运算:大于,小于,大于或等于,小于或等于

阅读全文 »

1. 定义和输出变量

1
2
3
4
5
6
7
8
9
10
# 定义变量
your_name='witt'

# 输出变量方法一
echo '输出变量(方法一)your_name:'
echo $your_name

# 输出变量方法二
echo '输出变量(方法二)your_name'
echo ${your_name}

2.只读变量和删除变量

阅读全文 »