linux的一些基本操作和命令

简介: linux的一些基本操作和命令

1.如何创建文件和文件夹

(1)创建文件,touch加文件名。

(2)用ls命令可查看我们创建出的文件。

(3)创建文件夹,mkdir 加文件夹名。

(4)用ls -l命令可以查看文件夹的属性。

(5)命令与文件名之间一定要有空格。

2.如何复制,移动,删除文件和文件夹

linux下文件的复制,移动与删除命令为:cp,mv,rm.

一.文件复制命令cp

命令格式:cp[-adfilprsu]源文件(source)目标文件(destination)

cp[option] source1 source2 source3 … directory

格式:cp 【选项】 源文件或目录 目的文件或目录

参数说明

-a:是指archive的意思,也说是指复制所有的目录。

-d:若源文件为连接文件(link file),则复制连接文件的属性而不是文件本身。

-f:强制(force),若有重复或其他疑问时,不会询问用户,而强制复制。强制覆盖同名文件。

-i:若目标文件(destination)已存在,在覆盖时会先询问是否真的操作。

-l:建立硬连接(hard link)的连接文件,而非复制文件本身。

-p:与文件的属性一起复制,而非使用默认属性。

-r:递归复制,用于目录的复制操作。按递归方式保留原目录结构复制文件。

-s:复制成符号连接文件(symbolic link),即”快捷方式“文件。

-u:若目标文件比源文件旧,更新目标文件。

-b:同名,备份原来的文件。

例子1:将/test1目录下的file1复制到/test3目录,并将文件名改为file2,可输入以下2的命令:

cp/test1/file1/test3/file2

例子2:

cp -Rf /home/user1/* /root/temp/

将/home/user1目录下的所有东西拷到/root/temp/下而不拷贝user1目录本身。

即格式为: cp -Rf 原路径/目的路径/

二.文件移动命令mv

命令格式:mv[-fiv] source destination

参数说明

-f:force,强制直接移动而不询问。

-i:若目标文件(destination)已经存在,就会询问是否覆盖。

-u:若目标文件已经存在,且源文件比较新,才会更新。

例子:将/test1目录下的file1复制到/test3目录,并将文件名改为file2,可输入以下命令。

mv/test1/file1/test3/file2

例子2:

mv/data/new  /data/old/

移动/data/new 到/data/old/文件夹下

注意:移动文件夹不要加/,若要移动文件夹下的东西加/

三.文件删除命令

命令格式:rm[fir]文件或目录

参数说明

-f:强制删除

-i:交互模式,在删除前询问用户是否操作。

-r:递归删除,常用在目录的删除。

例子:删除/test目录下的file1文件,可以输入以下命令:

rm -i/test/file1

3.通过文件名查找文件

find /etc   -name "xxxx"

/etc 表示所要查询的目录,“xxxx”表示要查找的文件名。

(1)“xxxx”中包含字符“elm”,则是’elm’或’elm’或’elm’;

(2)如果直接查询则只要"elm.cc";

4.查看进程和删除进程

一.查看进程(ps)

(1)ps列出当前所有的后台进程。

grep是搜索

ps -ef|grep java 表示查看所有进程里CMD是java的进程信息。

ps -aux|grep java -aux显示所有状态。

二.删除进程(kill)

(1)kill [-s 信号| -p] 【-a】进程号…

-s 指定需要送出的信号。既可以是信号也可以对应数字。

-p 指定kill命令只是显示进程的pid,并不真正送出结束信号。

(2)kill -l【信号】;

-l显示信号名称列表,也可以在/usr/include/linux/signal.h文件中找到。

(3)kill -9[PID]

-9表示强迫进程立即停止。

5.查看文件内容的命令

cat:由第一行开始显示内容;并将所有内容输出;

tac :从最后一行倒序显示内容,并将所有内容输出。

more:根据窗口大小,一页一页的显示文件内容。

less:和more类似,但其优点可以往前翻页;而且进行可以搜索字符;

head:只显示头几行;

tail:只显示最后几行;

nl:类似于 cat -n, 显示时输出行号;

tailf: 类似于tail -f

1.cat与tac(两者并不常用)

cat的语法是:cat[-n] 文件名(-n;显示时,连行号一起输出)

tac语法: tac 文件名。

2.more和less(常用)

more的语法:more 文件名

Enter向下n行,需要定义,默认为1行;

Ctrl f:向下滚动一屏;

空格键:向下滚动一屏;

Ctrl b:返回上一屏;

=:输出当前行的行号;

:f :输出文件名和当前行的行号;

v:调用vi编辑器;

!:命令 调用Shell,并执行命令;

q:退出more;

区别:

(a)more只能向后翻页,而无法向前翻页;

less可以使用【pageup】和【pagedown】前后翻页。

(b)more还可以配合管道符“|”(pipe)使用,例如:ls -al |more;

less可以搜索内容。想查找有没有weblogic字符串,可以这样做:

【root@redhat etc】#less passwd 然后输入:/weblogic 回车,如果有,则会高亮显示;

3.head和tail

head的语法:head [n number]文件名 (number显示行数);

tail的语法:tail [-n number]文件名

4.nl与cat -n的功能一样

5.tailf

tailf命令几乎等同于tail-f,严格来说应该与tail–follow=name更相似些。文件名改名之后也可以继续跟踪,适合日志文件的跟踪。与tail-f不同的是,如果文件不增长,它不会去访问磁盘文件。tailf特别适合便携机上跟踪日志文件,省电。原因是减少了磁盘访问。

tailf命令不是一个脚本,而是一个执行文件。

6.创建链接文件的两种方式

(1)链接的分类

a.软链接:符号链接,这类文件包含了另外一个文件的路径。可以连接任意文件和目录,也可以连接不同的文件系统文件,也可以连接不存在的文件,还可以循环连接自己。

b.硬链接是一个已存在文件的另一个名字。注意:

1)只能在同一个文件系统中的文件才能创建硬链接;

2)不允许给目录创建硬链接;

(2)c程序中使用link函数创建;

link函数申明如下:

#include<unistd.h>

int link(const charoldpath,const char newpath);

函数说明:link()以参数newpath指定的名称来建立一个新的链接(硬链接)到参数oldpath所指定的已存在文件。如果参数newpath指定的名称为一已存在的文件则不会建立链接。

返回值:成功则返回0,失败返回-1,错误原因存于errno.

错误的代码原因

1、EXDEV 参数oldpath 与newpath 不是建立在同一文件系统.

2、EPERM 参数oldpath 与newpath 所指的文件系统不支持硬连接

3、EROFS 文件存在于只读文件系统内

4、EFAULT 参数oldpath 或newpath 指针超出可存取内存空间.

5、ENAMETOLLONG 参数oldpath 或newpath 太长

6、ENOMEM 核心内存不足

7、EEXIST 参数newpath 所指的文件名已存在.

8、EMLINK 参数oldpath 所指的文件已达最大连接数目.

9、ELOOP 参数pathname 有过多符号连接问题

10、ENOSPC 文件系统的剩余空间不足.

11、EIO I/O 存取错误.

(3)在shell界面使用ln命令创建链接

固定一个固定的文件,其他想要使用时链接即可。

例如:ln -s/bin/less/usr/local/bin/less,其中-s是代号(symbolic)的意思。

1)软链接:ln -s filename

link_filename,意为创建一个名为"link_filename"指向"filename"的链接文件,它只会在你选定的位置上生成一个文件的镜像,类似windows下的快键方式。

2)硬链接:ln filename link_filename,没有参数-s,他会在选定的位置上生成一个和源文件大小相同的文件。

指令参数详细说明:

-f:链接时先将与dist同档名的档案删除。

-d:允许系统管理者硬链接自己的目录。

-i:在删除与dist同档名的档案时先进行询问。

-n:在进行软链接时,将dist视为一般的档案

-s:进行软链接;

-v:在链接前显示其档名;

-b:将在链接时会被覆写或删除的档案进行备份。

-S SUFFIX:将备份的档案都加上SUFFIX的字尾

-V METHOD:指定备份的方式

–help:显示辅助说明;

–version:显示版本。

相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
120 8
|
25天前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
52 14
Linux 10 个“who”命令示例
|
5天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
26 8
|
14天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
99 20
|
15天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
39 7
|
2月前
|
Linux 数据库
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
35 9
|
2月前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
2月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
149 3
|
2月前
|
存储 运维 Linux
如何在 Linux 系统中使用 envsubst 命令替换环境变量?
`envsubst` 是 Linux 系统中用于替换文本中环境变量值的实用工具。本文分三部分介绍其工作原理、使用方法及实际应用,包括配置文件替换、脚本执行中环境变量替换和动态生成文件等场景,帮助用户高效利用 `envsubst` 进行开发和运维工作。
69 4
|
2月前
|
Linux
在 Linux 系统中,`find` 命令
在 Linux 系统中,`find` 命令
40 1