Linux-文件管理命令

目录

文件命令1:pwd

文件命令2:cd

文件命令3:ls

文件命令4:mkdir

文件命令5:touch

文件命令6:cp

文件命令7:mv

举例:将文件test02.log改名为test03.log。将mail目录下的statistics文件移动到当前目录下

文件命令8:rm

rm 使用示例

文件命令9:cat

示例:查看test01.log和test02.log的内容,并把两个文件的内容合并到test03.log中。

文件命令10:head

文件命令11:tail

文件命令12:more

文件命令13:less

文件命令14:find

find使用示例

文件命令15:locate

文件命令16:which

文件命令15:gzip

gzip 使用示例:使用gzip 命令压缩、查看和解压缩命令。

文件命令16:tar

tar 使用示例:使用tar 命令打包、打包后压缩;使用tar 命令查询包内的文件,解压到指定目录

文件命令17:ln

ln 使用示例:使用ln 命令创建链接、并在删除源文件和恢复源文件后观察链接变化情况


文件命令1:pwd

pwd 的英文是print working directory,用于打印出当前的工作目录。有两个选项,-L 和 -P,其作用类似于cd命令的同名选项。

  • -L 目录连接链接时,输出连接路径
  • -P 输出物理路径
$ cd /tmp
$ ls -ld d1 link1 link2 link3
drwxr-xr-x. 2 root root 6 Oct 17 15:56 d1
lrwxrwxrwx. 1 root root 2 Oct 17 15:56 link1 -> d1
lrwxrwxrwx. 1 root root 5 Oct 17 15:56 link2 -> link1
lrwxrwxrwx. 1 root root 5 Oct 17 15:56 link3 -> link2
$ cd /tmp/link3
$ pwd
/tmp/link3
$ pwd -L
/tmp/link3
$ pwd -P
/tmp/d1

文件命令2:cd

用于改变当前工作目录。

语法: cd [dir]

cd /usr    进入目录/usr中
cd ..      进入(退到)上一层目录,两个点代表父目录
cd .       进入当前目录
cd         不带参数,默认回到家目录
cd -       进入前一个目录,适用于在两个目录之间快速切换
cd ~       进入家目录

文件命令3:ls

ls命令是Linux 命令中使用频率最高者之一,用于列出目录的内容,或者文件的信息,该命令的输出结果默认按照文件名排序,如果不指定目标,则列出当前目录的内容。

语法:ls [OPTION]... [FILE]...

ls         列出当前目录下的所有文件和目录(隐藏文件除外)
ls -l      显示详细信息(型态、权限、拥有者、大小等)
ls -A      显示隐藏的文件和目录(不包括 . 和 ..)
ls -a	   显示隐藏的文件和目录(包括 . 和 ..)
ls -t      按时间排序
ls -S      按大小排序
ls -X      按扩展名排序
ls -r      反过来排序
ls -1	   一行显示一个文件
ls -lh	   -h 选项用人类易读的格式显示大小信息
ls -x               逐行显示,而非默认的逐列显示
ls -l /bin/bash     列出指定文件的信息
ls -l /             列出指定目录的内容
ls -ld /            -d 选项用于列出目录本身的信息,而非目录的内容
ls -l file1 file2   可以同时列出多个文件

文件命令4:mkdir

mkdir 即make directory,可以一次性创建多个目录,如果目录已经存在,默认会报错,-p 选项可以使mkdir 命令在这种情况下不报错,-p 选项还可以用于自动创建不存在的父目录。
常见用法:

mkdir dir1                      创建一个名叫dir1 的目录
mkdir dir1 dir2                 创建多个目录
mkdir -p dir1/dir2/dir3         如果dir1, dir2 不存在,则一并创建
mkdir -pv dir1/dir2             -v 用于显示创建的过程

文件命令5:touch

touch 命令可用于创建空文件,此外,touch 可用于修改文件的时间戳。

把文件file 的时间戳改为当前时间
$ touch file
仅修改文件的访问时间
$ touch -a file
仅修改文件的内容改变时间
$ touch -m file
把文件的时间戳设定为指定的时间
$ touch -d "2020-01-17 17:14:10" file

文件命令6:cp

cp命令用于复制文件或者目录,可以一次复制单个文件,也可以一次复制多个文件(cp 命令属于高危命令,使用不慎就会有丢失数据的危险)。
语法:cp [OPTION]... SOURCE... DIRECTORY
        -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。
        -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
        -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
        -l:不复制文件,只是生成链接文件。

cp [OPTION]... SOURCE... DIRECTORY:复制多个文件时,目的位置必须是一个目录。
cp [OPTION]... [-T] SOURCE DEST:复制单个文件时,目的位置可以是文件,也可以是目录,如果是文件,就可以给新文件改名,如果是目录,则新文件被放到该目录下,名字和源文件相同。因为DEST 既可以是文件,也可以是目录,若需指定DEST 为文件,可使用-T 参数,若需指定DEST 为目录,可在DEST后面添加一个斜杠,就是DEST/。
cp [OPTION]... -t DIRECTORY SOURCE...:不常用,一个很高效的使用场合是与xargs 命令配合。假如需要把一个目录下众多子目录中的 html 文件全部复制出来,放到目录 /data/html 中,可以有两种做法:
find -name "*.html" -exec cp {} /data/html/ \;
find -name "*.html" | xargs cp -t /data/html/
第二种做法利用了xargs 以及cp 命令的-t 参数,可以大大减少需要启动的cp 进程数。

cp f1 f2             把文件f1 复制一份,新文件名为 f2
cp f1 d1/            复制f1 到目录 d1 下,新文件名字不变
cp f1 f2 f3 d1/      复制多个文件到同一个目录中
cp -i f1 f2          如果f2 已经存在,则覆盖之前等用户确认
cp -r d1 d2          复制目录时需要 -r 参数
cp -rv d1 d2          -v 参数显示复制的过程
cp -rf d1 d2          -f 参数使得cp 在无法打开已经存在的目标文件时删除目标然后重试
cp -a f1 f2           -a 参数保留原文件的属性,可用于复制块设备,字符设备,管道文件等


cp 命令默认情况下在覆盖文件之前不会询问用户,所以通常情况下 shell 里面已经对它做了别名,加入了 - i 参数。 cp 命令的 -f 参数不是强制覆盖的意思。

文件命令7:mv

mv命令用于移动件或者目录(高危命令,使用不慎就会有丢失数据的危险)。
如果原文件和目标文件在同一个父目录里面,则mv命令的效果就相当于给文件改名。
语法:mv [选项] 源文件或目录 目标文件或目录。
        -b :若需覆盖文件,则覆盖前先行备份。
        -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。
        -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖。
        -u :若目标文件已经存在,且 source 比较新,才会更新(update)。


mv 命令的语法和cp 命令完全相同,选项-T, -t 的作用也完全相同。
其它一些与cp 命令的作用相同的选项有:
        -i
        -v
        -f 选项使得mv 命令在覆盖已经存在的目标文件之前不询问用户,与-i 选项的作用相反。
mv 命令的行为类似于先用 cp -a src dst 把文件复制到目的地,然后再将原文件删除。
mv 命令默认情况下在覆盖文件之前不会询问用户,所以通常情况下shell 里面已经对它做了别名,加入了 -i 参数。如果-i 和-f 同时提供,则写在右边的生效。

举例:将文件test02.log改名为test03.log。将mail目录下的statistics文件移动到当前目录下

[root@localhost ~]# ls
audit  passwd.back  passwd_link  test01.log  test02.log
[root@localhost ~]# mv test02.log test03.log
[root@localhost ~]# mv audit/audit.log ./
[root@localhost ~]# ls
audit  audit.log  passwd.back  passwd_link  test01.log  test03.log
[root@localhost ~]# ls audit/
audit.log.1
[root@localhost ~]# mv audit/ audit_back
[root@localhost ~]# ls
audit_back  audit.log  passwd.back  passwd_link  test01.log  test03.log
[root@localhost ~]# 

文件命令8:rm

rm命令用于删除文件或者目录。属于高危命令,没有一个工具能够100% 恢复rm命令删除的文件,rm命令删除文件时并不是把文件放到类似图形界面的“回收站”里,所以没有“撤销删除”操作可用。

rm 命令默认情况下在删除文件之前不会询问用户,所以通常情况下shell 里面已经对它做了别名,加入了 -i 参数。如果-i 和-f 同时提供,则写在右边的生效。

语法:rm [OPTION] file_or_dir
    -f, --force           忽略不存在的文件,从不给出提示。
    -i, --interactive     进行交互式删除。
    -r, -R, --recursive   指示rm将参数中列出的全部目录和子目录均递归地删除。
    -v, --verbose         详细显示进行的步骤。


常用选项:
rm f1              删除文件 f1
rm f1 f2 f3        删除多个文件
rm -i f1 f2        -i 选项使得删除前先询问用户
rm -f f1 f2        -f 选项使得删除前不询问用户
rm -r d1           删除目录及目录里面的所有内容
rm -rf d1          删除目录及目录里面的所有内容,不确认
rm -rv d1          显示删除的过程

rm 命令默认情况下在删除文件之前不会询问用户,所以通常情况下shell 里面已经对它做了别名,加入了 -i 参数。如果-i 和-f 同时提供,则写在右边的生效。

rm 使用示例

删除 test01.log 文件,删除前询问。
强制删除 test03.log 文件。
删除 mail.bak 目录及其目录下所有文件和目录。
[root@localhost ~]# ls
audit_back  audit.log  passwd.back  passwd_link  test01.log  test03.log
[root@localhost ~]# rm test01.log
rm: remove regular empty file 'test01.log'? yes
[root@localhost ~]# rm -rf test03.log
[root@localhost ~]# rm -rf audit_back/
[root@localhost ~]# ls
audit.log  passwd.back  passwd_link
[root@localhost ~]#

文件命令9:cat

cat命令用于读取文件的全部内容,或者将几个文件合并为一个文件。cat 命令读取文件的全部内容,写到标准输出,最常用的一个选项是-A 选项,用于显示不可打印的字符。

语法:cat  [OPTION]  [FILE]
    -A, --show-all    等价于 –vET。
    -b, --number-nonblank    对非空输出行编号。
    -E, --show-ends      在每行结束处显示 $。
    -n, --number         对输出的所有行编号,由1开始对所有输出的行数编号。

常用用法:
    cat file		读取文件file 的全部内容
    cat -A file		显示不可打印字符


示例:查看test01.log和test02.log的内容,并把两个文件的内容合并到test03.log中。

[root@localhost ~]# ls
audit.log  passwd.back  passwd_link  test01.log  test02.log
[root@localhost ~]# cat test01.log
This is a test!
[root@localhost ~]# cat -b test02.log
     1  This is a test too!
[root@localhost ~]# cat test01.log test02.log > test03.log
[root@localhost ~]# cat test03.log
This is a test!
This is a test too!
[root@localhost ~]#

文件命令10:head

head用来显示文件的开头内容,默认head命令打印其相应文件的开头10行。
语法:head  [OPTION]  [FILE]

命令参数:
     -q 隐藏文件名
     -v 显示文件名
     -c<字节> 显示字节数
常用用法:
    head -n 3 file	读取文件的前面3行
    head -c 3 file	读取文件的前面3字节
    head -n -3 file	读取文件所有行,除了后面的3行
    head -c -3 file	读取文件的所有内容,除了后面的3字节

文件命令11:tail

tail命令用于读取文件的尾部。
语法:tail [OPTION]... [FILE]...

主要参数:
    -f 循环读取。
    -q 不显示处理信息。
    -v 显示详细的处理信息。
    -c<数目> 显示的字节数。
    -n<行数> 显示行数。
常用用法:
    tail -n 3 file       读取文件的后面3行
    tail -c 3 file       读取文件的后面3字节
    tail -n +3 file      从第3行开始读到文件尾部
    tail -c +3 file      从第3字节开始读到文件尾部
    tail -f file         跟踪文件尾部的变化

文件命令12:more

more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
语法:more [OPTION]... [FILE]...

        +n      从笫n行开始显示。
        -n       定义屏幕大小为n行。
        +/pattern 在文件显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示。
        -c       从顶部清屏,然后显示。

more 的控制命令:
    SPACE      向下一屏
    RETURN     向下一行
    q          退出

more常用操作命令(使用more命令在读取文件信息时,可以进行交互操作。)
    Enter    向下n行,需要定义。默认为1行。
    Ctrl+F   向下滚动一屏。
    空格键    向下滚动一屏。
    Ctrl+B   返回上一屏。
    =        输出当前行的行号。
    V        调用vi编辑器。
    !命令    调用Shell,并执行命令。 
    q        退出more。
    

文件命令13:less

less命令读取内容,分屏显示,less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
语法:less [OPTION]... [FILE]...

less 命令的功能与more 命令类似,不过它比more 命令有更多的控制功能,不但能够向前,也能够后退,并且其按键类似vim 编辑器,在许多场合使用less 会比使用more 更方便。


常用操作:
    /字符串:向下搜索“字符串”的功能。
    ?字符串:向上搜索“字符串”的功能。
    Q  退出less 命令。
    空格键 滚动一页。
    回车键 滚动一行。

其他有用的操作
    n:重复前一个搜索(与 / 或 ? 有关)
    N:反向重复前一个搜索(与 / 或 ? 有关
    b  向后翻一页
    d  向后翻半页
    h  显示帮助界面
    Q  退出less 命令
    u  向前滚动半页
    y  向前滚动一行
    [pagedown]: 向下翻动一页
    [pageup]:   向上翻动一页

文件命令14:find

find命令用来在指定目录下查找文件。
可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。
常用语法:find [path...] [expression]
    -name 按照文件名查找文件。
    -perm 按照文件权限来查找文件 。
    -user 按照文件属主来查找文件 。
    -mtime -n +n 按照文件的更改时间来查找文件。
find 命令有众多查找参数,结合多个参数可以实现成非常复杂和强大的查找功能,详尽的参数可参考man 文档find(1)。

查找范例:
    find -name "*book*"	    查找名字中包含了book 的文件
    find -user mysql		uid 为mysql
    find -size 0		    大小为0
    find -type l		    文件类型为软连接
    find /etc -name "*passwd"	在 /etc 下面查找
    find -empty		        查找空文件(包括空目录)
    find -empty -delete     找出空文件并将其删除

find使用示例

按照文件名来查找文件
[root@localhost ~]# find /etc -name passwd
/etc/pam.d/passwd
/etc/raddb/mods-enabled/passwd
/etc/raddb/mods-available/passwd
/etc/passwd
[root@localhost ~]# find . -name "*.log"
./test01.log
./ping.log
./test02.log
./test03.log
./audit.log
[root@localhost ~]#


查找/var/log/anaconda目录中更改时间在7日以前的普通文件。
[root@localhost ~]# find /var/log/anaconda/ -type f -mtime +7
/var/log/anaconda/dnf.librepo.log
/var/log/anaconda/syslog
/var/log/anaconda/dbus.log
/var/log/anaconda/ks-script-cdcy5u0e.log
/var/log/anaconda/packaging.log
/var/log/anaconda/ifcfg.log
/var/log/anaconda/lvm.log
/var/log/anaconda/program.log
/var/log/anaconda/journal.log
/var/log/anaconda/hawkey.log
/var/log/anaconda/anaconda.log
/var/log/anaconda/storage.log
/var/log/anaconda/X.log
文件类型:
d: 目录
c: 字型装置文件
b: 区块装置文件
p: 具名贮列
f: 一般文件
l: 符号连结

文件命令15:locate

locate可以快速的查找文件系统内是否有指定的文件。
查找原理:先建立一个文件名及路径的数据库,查找时去这个数据库内查询。
语法:locate [OPTION] PATTERN
    -e   将排除在寻找的范围之外。
    -f   将特定的文件排除在外。
    -r 使用正规运算式做查找条件。
    -o 指定文件的名称。
    -d 指定文件的路径。
使用locate 之前需要先用命令updatedb 生成数据库,一般会把updatedb 命令放到计划任务中定时执行。
当用户在执行loacte命令查找文件时,它会直接在索引数据库里查找,若该数据库太久没更新或不存在,在查找文件时就提示:“locate: can not open `/var/lib/mlocate/mlocate.db‘: No such file or directory”,此时执行“updatedb”更新下数据库即可。

查找范例:
    locate .bashrc		    查找路径中包含了字符 .bashrc 的记录
    locate --regex '/us$'	查找匹配正则表达式的路径

文件命令16:which

which命令在PATH所指定的目录中查找可执行文件。
使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
语法:which [options] programname [...]
which 命令用于快速地确定外部命令的绝对路径。

查找范例:
    which ls	查找ls 命令的绝对路径
    which -a ls	如果多个目录中都有匹配的文件,则全部显示
    which cp mv rm	查找多个文件

文件命令15:gzip

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令。
gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间。
语法:gzip[参数][文件或者目录]
    -d 或--decompress或----uncompress  解开压缩文件。
    -f 或--force      强行压缩文件,不理会文件名是否存在以及该文件是否为符号连接。
    -l 或--list          列出压缩文件的相关信息。
    -r 或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。
    -v 或--verbose   显示指令执行过程。
据统计,gzip命令对文本文件有60%~70%的压缩率,文件经过gzip压缩过后,其名称后面会多出".gz"的扩展名

gzip 使用示例:使用gzip 命令压缩、查看和解压缩命令。

[root@localhost ~]# ls
audit.log    passwd_link  test01.log  test03.log
passwd.back  ping.log     test02.log
[root@localhost ~]# gzip *.log
[root@localhost ~]# ls
audit.log.gz  passwd_link  test01.log.gz  test03.log.gz
passwd.back   ping.log.gz  test02.log.gz
[root@localhost ~]# gzip -l test01.log.gz
         compressed        uncompressed  ratio uncompressed_name
                 45                  16   0.0% test01.log
[root@localhost ~]# gzip -dv test01.log.gz
test01.log.gz:    0.0% -- replaced with test01.log
[root@localhost ~]# ls
audit.log.gz  passwd_link  test01.log     test03.log.gz
passwd.back   ping.log.gz  test02.log.gz

文件命令16:tar

tar命令可用于打包文件,把多个文件打到一个包中,方便数据的移动。
语法:tar [OPTION...] [FILE]
    -c 建立新的压缩文件。
    -x 从压缩的文件中提取文件。
    -t 显示压缩文件的内容。
    -z 支持gzip解压文件。
    -j 支持bzip2解压文件。
    -v 显示操作过程。

-f 选项后跟tar 包的名字,如果是一个减号-,则代表标准输出(创建包时),或者标准输入(解包或者查看包时)。
tar 命令通常和压缩命令配合起来使用,-z, -j, -J 选项分别对应着gzip, bzip2, xz 这三个压缩工具,当指定了压缩选项后,tar 就会启动相应的压缩工具来做压缩或者解压工作,并通过管道与压缩工具传输数据。命令 tar cf - dir1 | gzip > dir1.tar.gz 等效于命令 tar czf dir1.tar.gz dir1

常用用法:
    tar cf ball.tar dir1            把目录dir1 及其下所有内容打包
    tar tf ball.tar                 列出包中的内容
    tar xf ball.tar                 把包中的内容解到当前目录
    tar czf ball.tar.gz dir1        打包然后用gzip压缩
    tar cjf ball.tar.bz2 dir1       打包然后用bzip2压缩
    tar cJf ball.tar.xz dir1        打包然后用xz压缩
    tar xf ball.tar -C /tmp         解到/tmp 目录下(默认在当前目录)
    tar xvf ball.tar                -v 显示过程

tar 使用示例:使用tar 命令打包、打包后压缩;使用tar 命令查询包内的文件,解压到指定目录

[root@localhost ~]# ls
passwd  test01.log  test02.log
[root@localhost ~]# tar -cf log.tar *.log
[root@localhost ~]# tar -zcf log.tar.gz *.log
[root@localhost ~]# ls
log.tar  log.tar.gz  passwd  test01.log  test02.log
[root@localhost ~]# tar -ztvf log.tar.gz
-rw------- root/root         0 2020-07-29 17:47 test01.log
-rw------- root/root         0 2020-07-29 17:47 test02.log
[root@localhost ~]# mkdir log
[root@localhost ~]# tar -zxf log.tar.gz -C ./log/
[root@localhost ~]# ls
log  log.tar  log.tar.gz  passwd  test01.log  test02.log
[root@localhost ~]# ls log
test01.log  test02.log


文件命令17:ln

Linux中有软链接和硬链接两种。ln 命令用于创建链接文件。

ln的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
ln命令在不带参数的情况下,默认创建的是硬链接。

语法:ln [ -f | -n] [ -s ] SourceFile [ TargetFile ]
    -b 删除,覆盖以前建立的链接。
    -d 允许超级用户制作目录的硬链接。
    -f 强制执行。
    -i 交互模式,文件存在则提示用户是否覆盖。
    -n 把符号链接视为一般目录。
    -s 软链接(符号链接)。
 

ln 使用示例:使用ln 命令创建链接、并在删除源文件和恢复源文件后观察链接变化情况

[root@localhost ~]# ls
passwd
[root@localhost ~]# ln passwd link_h_password
[root@localhost ~]# ln -s passwd link_s_password
[root@localhost ~]# ls -l
total 8
-rw-------. 2 root root 2546 Jul 29 15:24 link_h_password
lrwxrwxrwx. 1 root root    6 Jul 29 17:41 link_s_password -> passwd
-rw-------. 2 root root 2546 Jul 29 15:24 passwd
[root@localhost ~]# rm -f passwd
[root@localhost ~]# ls -l
total 4
-rw-------. 1 root root 2546 Jul 29 15:24 link_h_password
lrwxrwxrwx. 1 root root    6 Jul 29 17:41 link_s_password -> passwd
[root@localhost ~]# cp /etc/passwd passwd
[root@localhost ~]# ls -l
total 8
-rw-------. 1 root root 2546 Jul 29 15:24 link_h_password
lrwxrwxrwx. 1 root root    6 Jul 29 17:41 link_s_password -> passwd
-rw-------. 1 root root 2546 Jul 29 17:41 passwd

tac [文件名]                     显示文件内容(反向列示)

ln -s [原文件] [目标文件] 生成链接文件

ln -s                                 创建软链接(类似Windows快捷方式)

文件命令18:cloc 统计源代码行数

cloc 是一个用于统计源代码行数的命令行工具,在 Linux 系统中可用。它可以帮助您分析和了解代码库中的代码量,包括各种编程语言的文件数量、代码行数、注释行数和空白行数等信息。

cloc 支持多种编程语言,包括常见的 C、C++、Java、Python、JavaScript、Ruby 等,以及许多其他语言。它会递归地扫描指定目录下的所有文件,并对不同类型的文件进行分类和计数。

要在 Linux 中使用 cloc,需要先安装它。您可以通过以下命令使用 apt 包管理器安装 cloc

sudo apt-get update
sudo apt-get install cloc

安装完成后,可以在终端中使用 cloc 命令来统计代码行数。以下是一些常见用法示例:

  • 统计指定目录下的代码行数:
    cloc /path/to/directory
    ```
    
    
  • 统计多个目录的代码行数:
    cloc /path/to/directory1 /path/to/directory2
    ```
    
    
  • 统计指定文件的代码行数:
    cloc /path/to/file1 /path/to/file2
    ```
    
    
  • 生成详细的统计报告,包括每个文件类型的详细信息:
    cloc --report-file=output.txt /path/to/directory
    ```

创作不易,如果这篇【文章】有帮助到你,希望可以给作者点个赞👍,你的鼓励是我最大的动力!

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhugenmi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值