cp【重要】
【语法】:cp
[选项] [源文件或目录] [目标文件或目录]
【功能】: 复制文件或目录;
【说明】: cp
指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
【常用选项】:
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在;
-i 或 --interactive 覆盖文件之前先询问用户;
-r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理;
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理。
例如:
mv【重要】
mv
命令是move
的缩写,可以用来移动文件或者将文件改名(move (rename) files
),是Linux
系统下常用的命
令,经常用来备份文件或者目录。
【语法】: mv [选项] [源文件或目录] [目标文件或目录]
【功能】:
视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。
【常用选项】:
-f
:force
强制的意思,如果目标文件已经存在,不会询问而直接覆盖。-i
:若目标文件 (destination
) 已经存在时,就会询问是否覆盖。
例如:
which
当你在Linux
系统中使用命令行时,有时会遇到多个同名的可执行文件,这时候就需要使用which
命令来确定要执行的是哪个文件。
which
命令用于查找可执行文件的位置。它会在环境变量$PATH
指定的路径中查找指定的命令,并返回第一个找到的命令的完整路径。
举个例子,如果你想查找ls
命令的路径,可以在Linux
终端中输入以下命令:
which ls
该命令会返回ls
命令的完整路径。如果系统中有多个ls
命令,which
命令会返回第一个找到的命令的路径。
which
命令还有一些常用的选项,例如:
-a
:查找所有符合条件的命令,并将它们的完整路径都输出。-i
:忽略大小写。-n
:不执行任何命令,只查找可执行文件的路径。-p
:指定要搜索的路径,而不使用环境变量$PATH
。
whereis
whereis
指令用于查找二进制文件、源代码文件和帮助文件的位置。它会在默认的搜索路径中查找指定的文件,并返回它们的位置信息。
举个例子,如果你想查找ls
命令的位置,可以在终端中输入以下命令:
whereis ls
该命令会返回ls
命令的位置信息,例如:
其中,/bin/ls
是ls
命令的可执行文件所在的路径,/usr/share/man/man1/ls.1.gz
是ls
命令的帮助文件所在的路径。
whereis
命令还支持一些选项,例如:
-b
:只查找可执行文件的位置。
-m
:只查找帮助文件的位置。-s
:只查找源代码文件的位置。
这些选项可以通过在命令后面添加相应的参数来使用,例如:
whereis -b ls whereis -m ls
⭐查看文本内容指令
cat【重要】
【语法】:cat
[选项][文件]
【功能】: 查看目标文件的内容
【常用选项】:
-b
对非空输出行编号-n
对输出的所有行编号-s
不输出多行空行
例如:
如果只敲cat
,如下:
ctrl + c
退出噢~
more
【语法】:more
[选项] [普通文件]
【功能】:more
命令,功能类似 cat
【常用选项】:
q
退出more
例如:
more test1.txt
【注意】:more
指令只能往下翻阅文本,这是它的缺点,往下阅读按enter
键,按空格
往下阅读的翻阅的间隔大些~
less【重要】
less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看
但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
【语法】: less
[参数] 文件
【功能】:less
与more
类似,但使用less
可以随意浏览文件,而more
仅能向前移动,却不能向后移动,而且less
在查看之前不会加载整个文件。
【选项】:
-i
忽略搜索时的大小写。-N
显示每行的行号。/
字符串:向下搜索 “字符串” 的功能。?
字符串:向上搜索 “字符串” 的功能。n
:重复前一个搜索(与/
或?
有关)。N
:反向重复前一个搜索(与/
或?
有关)。q: quit
head
head
与tail
就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head
用来显示档案的开头至标准输出中,而tail
想当然尔就是看档案的结尾。
【语法】: head
[参数]… [文件]…
【功能】:head
用来显示档案的开头至标准输出中,默认head
命令打印其相应文件的开头10
行。
【选项】:
-n
<行数> 显示的行数。
tail
tail
命令从指定点开始将文件写到标准输出.使用tail
命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename
会把filename
里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容。
【语法】: tail
[必要参数] [选择参数] [文件]
【功能】: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
【选项】:
-f
循环读取。-n
<行数> 显示行数。
【问题】:如果有一个文本文件里面有200行内容,而我想查看中间的100~120行的内容,该怎么做?
- 可以创建一个临时文本文件,将目标文件的前
120
行内容使用head
指令和输出重定向放入这个临时文本文件当中,然后使用tail
查看后二十行即可。
- 使用管道:
head -120 test1.txt | tail -20
。 - 可以使用
Linux
下的sed
命令来实现这个功能。具体的命令如下:
sed -n '100,120p' filename.txt
其中,-n
选项表示不输出文件内容中的所有行,只输出指定的行;100,120p
表示输出文件内容中第100
到120
行的内容;filename.txt
表示要查看的文件名。
执行这个命令后,会在Linux
终端输出文件中第100
到120
行的内容。
- 关于管道,可以看看下面两篇文章:
⭐时间相关的指令
date
date
指定格式显示时间: date +%Y:%m:%d
date
用法:date [OPTION]... [+FORMAT]
在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下:
%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%X : 相当于 %H:%M:%S
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999)
%F : 相当于 %Y-%m-%d
在设定时间方面
date -s 【设置当前时间,只有root权限才能设置,其他只能查看。】
date -s 20080523 【设置成20080523,这样会把具体时间设置成空00:00:00 】
date -s 01:01:01 【设置具体时间,不会对日期做更改】
date -s “01:01:01 2008-05-23″ 【这样可以设置全部时间】
date -s “01:01:01 20080523″ 【这样可以设置全部时间】
date -s “2008-05-23 01:01:01″ 【这样可以设置全部时间】
date -s “20080523 01:01:01″ 【这样可以设置全部时间】
时间戳
时间->时间戳:date +%s
时间戳->时间:date -d@1685011541
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
cal
cal
命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历” 又名 “太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
【命令格式】: cal
[参数][月份][年份]
【功能】: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份。
【常用选项】:
-3 显示系统前一个月,当前月,下一个月的月历
-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y 显示当前年份的日历
例如:cal -y 2023
echo
在Linux
中,echo
命令用于在终端输出文本或变量的值。它的基本语法如下:
echo [option(s)] [string(s)]
其中,[option(s)]
是可选的参数,可以用来控制输出的格式和行为;[string(s)]
是要输出的文本或变量。
例如,要在终端输出一个字符串:
echo "Hello, world"
也可以将多个字符串用空格分隔,它们将会被自动连接起来:
【常用选项】:
-n
:在输出后不换行。-e
:解析一些特殊字符,例如\n
表示换行符。-E
:禁止解析特殊字符。-c
:在输出前清除屏幕。-s
:禁止输出回显。-r
:输出原始数据,不进行转义。-h
:显示帮助信息。-v
:显示版本信息。
这些选项可以组合使用,例如:
echo -ne "Hello,\nworld\n"
echo
还可以将字符串输出到普通文本文件当中,使用输出重定向 >
或 >>
。
find【灰常重要】
Linux下find命令在目录结构中搜索文件,并执行指定的操作。
Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只要你具有相应的权限。
在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。
【语法】: find pathname -options
【功能】: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
【常用选项】:
-name
按照文件名查找文件。
小伙伴们现在只需要知道-name
查找即可,后面对Linux
了解的多了在慢慢查其他的~(需要了解更多可以点此链接噢 ~ Linux find 命令)
例如:
grep【重要】
->grep
参考手册<-
【语法】: grep
[选项] 搜寻字符串 文件
【功能】: 在文件中搜索字符串,将找到的行打印出来
【常用选项】:
-i
:忽略大小写的不同,所有大小写视为相同-n
:顺便输出行号-v
:反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行
zip/unzip
【语法】: zip
压缩文件.zip
目录或文件
【功能】: 将目录或文件压缩成zip格式
【常用选项】:
-r
递归处理,将指定目录下的所有文件和子目录一并处理
例如:
想详细了解可看:unzip和zip指令的使用方法
tar【重要】
tar [-cxtzjvf] 文件与目录 …
参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录
要具体了解可以看这里噢 ~:Linux tar 命令
bc
bc
命令可以很方便的进行浮点运算
CTRL + c
跳出噢~
uname
【语法】:uname
[选项]
【功能】: uname
用来获取电脑和操作系统的相关信息。
【补充说明】:uname
可显示linux
主机所用的操作系统的版本、硬件的名称等基本信息。
【常用选项】:
-a 或–all 显示全部的信息,包括内核名称、主机名、操作系统版本、处理器类型和硬件架构等。。
-m 或–machine 显示处理器类型。
-n 或–nodename 显示主机名。
-r 或–release 显示内核版本号。
-s 或–sysname 显示操作系统名称。
-v 显示操作系统的版本。
–help 显示帮助。
–version 显示版本信息。
-p 显示处理器类型(与 -m 选项相同)。
例如:
具体了解看这~:Linux uname 命令
⭐重要的几个热键
[Tab]
[Tab]
按键—具有『命令补全』和『档案补齐』的功能
Tab键挺简单的,可以看这噢~:linux下tab自动补全功能。
[ctrl]+c
[Ctrl]+c
按键—让当前的程序『停掉』
例如:
当我们在一个程序运行的时候想让他退出,大部分CTRL + c
是可以的~
[ctrl]+d
[Ctrl]+d
按键—通常代表着:『键盘输入结束(End Of File, EOF 或 End OfInput)』的意思;另外,他也可以用来取代exit
。
例如:
shutdown
【语法】:shutdown
[选项]
【常见选项】:
-h
: 将系统的服务停掉后,立即关机。-r
: 在将系统的服务停掉之后就重新启动
-t sec
: -t 后面加秒数,亦即『过几秒后关机』的意思
如果是使用服务器的话,这个指令基本用不到,因为服务器是不关机的~要关也行,在服务器后台重启就ok啦 ~
⭐扩展命令
安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
这些命令大家感兴趣可以去网上搜搜其作用,然后在自己的Linux
下敲敲~
🎉写在最后
💝本文是带大家入门Linux,能够简单上手进行实操。文章涉及的知识有: Linux 历史背景与环境搭建,Linux下的文件以及用户的理解,以及Linux的一些基本指令。指令例如:
ls:列出目录中的文件和子目录。
cd:改变当前工作目录。
mkdir:创建一个新的目录。
rmdir:删除一个空目录。
touch:创建一个新的空文件或更新一个现有文件的最后修改日期和时间。
cp:复制文件或目录。
rm:删除文件或目录。
mv:移动或重命名文件或目录。
cat:连接文件或输出文件内容。
less:允许用户浏览文件内容,其中包括分页、按行搜索和编辑等功能。
grep:搜索文件中包含指定字符的行。
等等都是一些常用且重要的指令,别看指令这么多,只要多敲,都能记得住,切不可死记硬背噢,一定一定要上手多敲,敲得多了,自然就会了~~~😊
❤️🔥后续将会继续输出有关Linux
的文章,你们的支持就是我写作的最大动力!
感谢阅读本小白的博客,错误的地方请严厉指出噢~