`
hanqunfeng
  • 浏览: 1541959 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

程序员必知必会----linux常用命令之一【基础命令】

 
阅读更多

一.文件处理命令

1.查看目录下的内容:

ls -la /dir :-a显示所有文件,-l显示详细信息

ll /dir

 

2.查看目录或文件的属性

ll -d /dir :-d只显示目录信息

ll filename

 

3.切换目录

cd /  :切换到根目录

cd .. :回到上级目录

cd -  :返回到上一个访问的目录

 

4.查看当前路径

pwd

 

5.创建空文件

touch filename

 

6.创建目录

mkdir dir

mkdir -p dir/dir/dir :创建多级目录

 

7.文件和目录复制

cp sourcefile todir :复制到指定目录,保持原文件名

cp file1 file2 todir :同时复制多个文件到指定目录下

cp sourcefile todir/newfile :复制到指定目录,并重命名文件

cp -R sourcedir todir :复制目录到指定目录下

cp sourcedir/* todir :复制目录下的文件到指定目录

cp -n sourcefile todir :如文件已经存在,则不覆盖

cp -f sourcefile todir :如文件已经存在,则强制覆盖

 

8.移动文件、重命名

mv file1 file2 :重命名file1为file2

mv file todir :将文件移动到指定目录

mv dir todir :将目录移动到指定目录

mv -n file todir :如有重复,则不覆盖

mv -f file todir :如有重复,则强制覆盖

 

9.文件和目录删除

rm -f file

rm -rf dir

 

10.显示文件内容相关

1)cat file:显示文件所有内容

2)more file:分页显示文件内容

下一页:空格

下一行:回车

退出  :q

3)head -20 file:显示文件前20行,默认是10行

4)tail -20 file:显示文件最后20行,默认是10行

tail -f file -n 100:动态显示文件内容,先显示最后100行内容,用于查看日志

 

11.软链接与硬连接

ln -s file/dir file/dir :软连接

ln file/dir file/dir :硬连接

 

 

二.权限管理命令

1.改变文件或目录权限

chmod 777 file/dir

chmod u+x file :赋予文件所有者执行权限

u:文件所有者

g:文件所属组

o:其它用户和组

a:所有用户所有组

+:赋予权限 -:去除权限

r:读权限   文件--可以查看  目录--可以列出目录内容

w:写权限   文件--可以修改  目录--可以在目录中创建、删除文件和目录

x:执行权限 文件--可以执行文件 目录--可以进入目录

注:对于目录,如有r权限,则必须有x权限。

 

2.改变文件或目录所有者和所属组

chown user file :将file的所有者修改为user

chgrp group file :将file的所属组修改为group

chown -R user.group dir :修改dir及其子目录的所有者和所属组 

 

三.文件搜索命令

1.显示系统命令所在目录

which useradd

 

2.查找文件或目录

find dir -name filename:在目录下查找文件名为filename的文件

-name:文件名称,例如:find . -name "*.log" 

-size:文件大小,以block为单位,1block=512k

-size +204800:大于100M

-size -204800:小于100M

-user:文件所有者

-ctime:按文件创建时间来查找文件,-n指n天以内,+n指n天以前

-cmin:同上,分钟

-mtime:按文件更改时间来查找文件,-n指n天以内,+n指n天以前

-mmin:同上,分钟

-atime:按文件访问时间来查找文件

-amin:同上,分钟

-type b/d/c/p/l/f :查是块设备、目录、字符设备、管道、符号链接、普通文件

-empty:查找在系统中为空的文件或者文件夹

-exec commond {} \;:将查找到的路径作为commond的参数,并执行,

例如:find . -name .svn -exec rm -rf {} \; 类似于:find . -name .svn | xargs rm -rf

 find . -name "*.log" -exec cp '{}' ./dir ';' :将当前目录下的以.log结尾的文件拷贝到./dir下

类似于find . -name "*.log" | xargs -n1 -i cp {} ./dir

-n[num] : 执行命令时,一次提供几个参数,这里表示,每次传递给cp一个参数

-maxdepth:查找目录最大深度,默认是全部查找

例如:find -maxdepth 2 -name "*${filename}*" -exec cp {} $newfilename \;

-a:and

-o:or

例子:查询大于100M并且所有者为hanqf的文件并将其删除

find /etc -size +204800 -a -user hanqf -exec rm -rf {} \;

!:不等于,不包含,例如:find . ! -type d,查找所有类型不是目录的文件

 

 

 

3.从文件索引库中查找文件或目录

updatedb:更新索引,系统会自动定期执行

locate key:从索引库中查找名称包含key的文件和目录

 

4.在文件中搜索匹配关键字的行

grep key file:grep ^# file:显示所有行首是#的行

cat file | grep key

grep -v key file:查找不含key的行

grep key file -A 10:显示关键字行及其后面的10行

grep key file -B 10:显示关键字行及其前面的10行

 

四.帮助命令

1.获得帮助信息

man ls:查看ls的命令帮助

man services:查看配置文件services的帮助信息(/etc/services,配置文件都位于/etc下)

man passwd:查看命令,或者man 1 passwd

man 5 passwd:查看配置文件

 

2.获得命令的简单说明

makewhatis:建立索引数据库

whatis ls

 

五.压缩和解压缩命令

1.格式:.gz 只能压缩文件

gzip file ===》file.gz

gunzip file.gz ===》file

gunzip *.gz

 

2.格式:.tar 可以压缩文件和目录

tar -cvf file.tar file

-c:产生.tar文件

-v:显示详细信息

-f:指定压缩后的文件名

-z:打包同时压缩为.gz

 

tar -xvf file.tar

-x:解压.tar文件

-v:显示详细信息

-f:指定要解压的文件名

-z:解压缩.gz

 

 

tar -zcvf file.tar.gz file/dir

tar -zxvf file.tar.gz 

tar -zxvf file.tar.gz -C todir

-C:解压到指定目录

tar -zcvf file_$(date +%F).tar.gz file

$(date +%Y.%m.%d-%H%M)

 

tar -ztf file.tar.gz:不解包,查看包中文件列表

 

tar -zcvf file.tar.gz dir1 dir2 dir3:压缩多个目录

 

3.格式:.zip 可以压缩文件和目录

zip file.zip file

zip -r dir.zip dir

 

unzip file.zip

unzip -o file.zip:解压后如果文件已经存在,则覆盖

unzip -n file.zip:解压后如果文件已经存在,则不覆盖

 

4.格式:.bz2 只能压缩文件

bzip2 -k file===>file.bz2 

-k:压缩后保留原文件

 

bunzip2 -k file.bz2 

-k:解压后保留原文件

 

 

六.网络通信命令

1.向已经登录系统的另一个用户发送即时消息

write user

Ctrl+D:退出

 

2.向所有登录用户发送广播消息

wall

Ctrl+D:退出

 

cat file | wall

wall < file

 

3.测试网络连通性

ping ip/domain

ping 192.168.36.49 -c 3 :-c 测试次数

ping 192.168.36.49 -c 3 -s 1000 :-s 发送icmp包的大小bytes

 

4.查看网络设置信息

ifconfig -a:查看所有网卡信息

ip a:查看网卡信息

 

七.系统关机与重启命令

重启:

shutdown -r:安全重启,会通知正在登录的用户

shutdown -r now:马上重启

reboot:马上重启,不通知登录用户

init 6

 

关机:

shutdown -h:安全关机,会通知正在登录的用户

shutdown -h now:马上关机

init 0

poweroff:直接断电,相当于按住电源键3秒钟

 

echo b > /proc/sysrq-trigger 立即重新计算机

echo o > /proc/sysrq-trigger 立即关闭计算机

 

 

八.命令别名

alias:查看所有系统定义的别名

定义:

alias copy=cp

alias xrm="rm -r"

删除:unalias copy

 

九.输入/输出重定向

0:标准输入

1:标准输出

2:标准错误输出

>:输出重定向  date > file

>>:增量输出重定向 date >> file

<:输入重定向 wall < file

例子:

标准输出和错误输出分别定向到指定的文件

ls 1>/dev/null 2>/dev/null

 

标准输出和错误输出都定向到同一个文件

ls >/dev/null 2>&1  ===== ls >& /dev/null

 

十.管道

| : cat file | grep key | sort | uniq | wc -l

 

十一.命令连接符

; : 间隔命令

&& :逻辑与,前面的命令成功,才会执行后面的命令

|| :逻辑或,前面的命令失败,才会执行后面的命令

 

十二.命令替换符

`command`:ls -l `which touch` 会优先执行替换符里面的命令,并将结果作为前面命令的参数

 

十三.系统相关

runlevel:查看当前的系统运行级别

init 5:切换到5运行级别

0:关机

1:单用户安全模式

2:多用户,类似于3,但不支持nfs

3:多用户,完整模式

4:未使用

5:X window

6:重启

 

uname -a :查看系统类型

 

十四.系统时间

hwclock --hctosys:用主板时间设置软件时间

hwclock --systohc:用软件时间设置主板时间

hwclock --set --date="9/22/96 16:45:05"

 

date MMDDHHmmYYYY.ss:设置软件时间

 

十五.网络命令

1.ssh登录:

ssh -p 2188 user@192.168.1.219  //不同用户名

ssh -p 2188 192.168.1.219  //相同用户名

 

2.scp远程传输

scp -P 2188 xxx.txt  user@192.168.1.219:~/xxx.txt //不同用户名

scp -P 2188 xxx.txt  192.168.1.219:~/xxx.txt //相同用户名

 

十六.watch

定期执行程序,全屏显示输出

watch -n1 command

-n[num]:间隔多少秒执行一次command

例子:watch -n1 ls -al:每隔1秒,查看当前目录的变化,默认2秒

 

 

 十七.系统启动时关闭进度条,显示详细信息

vi /boot/grub/grub.conf

#将下面内容最后的rhgb去掉即可

kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

 

说明:

其中"rhgb"表示"redhat graphics boot",就是图形进度条模式。

而"quiet"表示在启动过程中只显示重要启动信息,类似硬件自检之类的消息不会显示,可以有选择地选用。

 

 十八.查看centos版本号

cat /etc/issue

 

 

十九.大文件拆分

split -b 512m new-fl.tar.gz new-fl.

split -b 2g new-fl.tar.gz new-fl.

split -d -b 2g new-fl.tar.gz new-fl.

split -l 100 list.csv list.csv.

格式:split 参数 被分割文件 分割后文件前缀

参数:

-b:分割文件的大小

-d:默认分割后的文件后缀是aa、ab、ac……,加上-d参数,后缀变为00,01,02……

-l:按行分割文件,这里表示100行一个文件

 

 

 

 

 

 

0
0
分享到:
评论

相关推荐

    程序员必知必会linux基础知识

    用户必知必会的Linux常用命令之【基础命令】包括了对文件和目录的创建、删除、移动、复制等操作的命令。这些是进行Linux系统日常维护和操作时,使用频率最高的命令。 【vim】作为程序员的编辑器,是Linux系统中必不...

    程序员必会的Linux命令

    ### 程序员必会的 Linux 命令 #### 一、查找文件 - **Find**: `find` 命令用于在文件系统中查找文件或目录。 - **基本格式**:`find [搜索起点] [选项]` - **示例**: - `find / -name filename.txt`:在根目录...

    超强版linux程序员手册

    《超强版Linux程序员手册》是一本全面覆盖Linux操作系统下编程和系统管理的综合资源,旨在为程序员提供详尽且实用的指南。无论你是初学者还是经验丰富的开发者,这本书都将是你在Linux开发领域的得力助手。 手册的...

    Linux常用命令全集

    在IT领域,Linux操作系统是开发者、系统管理员和程序员的重要工具。了解并熟练使用Linux命令行是成为高效Linux用户的关键。本篇文章将详细讲解Linux入门...希望这份Linux常用命令全集能为你的学习之路提供宝贵的指引。

    迅雷java高级程序员-面试归来-2010-05-21

    - 虽然题目只提到“写6个Linux命令”,但实际上面试官可能会更关注应聘者对Linux环境的理解以及常用命令的应用能力。 4. **SQL相关** - SQL是数据库操作的基础,熟练掌握SQL对于任何一名Java程序员来说都是必不可...

    linux常用命令大全eb-mas开发笔记

    以上只是Linux常用命令的一部分,熟练掌握这些命令将极大地提高你在Linux环境下的工作效率。在EB-MAS开发过程中,理解和运用这些命令至关重要,能够帮助你更高效地管理和操作文件、目录,以及进行各种系统级别的任务...

    面试系统linux 常用的20种必会的命令.docx

    ### Linux常用命令详解 #### 1. `cd` - 切换工作目录 用于改变当前的工作目录。例如: ``` cd /home/user ``` #### 2. `ls` - 显示目录内容 列出指定目录下的文件和子目录列表。例如: ``` ls -l ``` #### 3. `...

    Linux常用命令Linux常用命令

    这些命令只是Linux CLI中的一小部分,但它们构成了日常操作的基础。熟练掌握这些命令,能大大提高在Linux环境中的工作效率。对于PHP、C、C++程序员来说,了解和运用这些命令,无论是进行代码调试、文件管理还是自动...

    linux命令--RUN[参照].pdf

    此外,`vi`或`vim`是Linux中常用的文本编辑器,虽然上手难度相对较高,但对于程序员和系统管理员而言,熟练掌握它是必不可少的。`less`或`more`命令用于分页查看文件内容,尤其适用于大文件。 在软件开发领域,...

    Linux命令集合

    Linux命令集合提供了常用的操作指令,帮助程序员高效地进行系统管理、文件操作、网络通信等任务。以下是一些核心的Linux命令及其应用场景的详细解释: 1. **ls**:用于列出目录中的文件和子目录。通过添加参数,如`...

    Linux GCC常用命令.pdf

    Linux GCC常用命令涵盖了GCC(GNU Compiler Collection)编译器的使用方法,它是编写和运行C、C++等语言程序的重要工具。GCC最初仅支持C语言编译,但随着发展,它已演化为一个强大的编译器集合,支持多种编程语言,...

    jdk-14.0.1_linux-x64_bin.tar.zip

    总结来说,正确安装和配置JDK 14.0.1在Linux系统上是一项基础但关键的任务。通过解压提供的压缩包,设置相应的环境变量,我们可以顺利地在Linux环境中开发和运行Java程序,同时也能享受到新版本带来的性能优化和功能...

    程序员的鄙视李安

    ”这句话反映了程序员群体中的一种普遍现象:不同的编程语言会有各自的拥趸者。PHP作为一种广泛应用于Web开发的语言,在其支持者眼中具有很多优点: - **易于上手**:PHP语法简洁,入门门槛较低。 - **广泛的社区...

    Linux系统中Vi常用命令及高级应用

    在Linux系统中,Vi(Visual Editor)是一个强大的文本编辑器,对于系统管理员和程序员来说是必不可少的工具。Vi分为两种模式:命令模式和插入模式。在命令模式下,用户可以通过键盘输入各种命令来操作文本,而在插入...

    linux主要shell命令详解

    总之,学习和掌握Linux shell命令对于每一个使用Linux系统的用户来说都是一项基础且重要的技能。通过熟悉不同类型的shell,了解它们的特点和使用场景,并且掌握shell脚本的编写方法,用户可以更有效地利用Linux系统...

    linux gdb调试命令.pdf

    Linux GDB(GNU Debugger)是一个功能强大的命令行调试工具,它可以用来调试C/C++和其他语言编写的程序...GDB作为一款功能强大的调试工具,在Linux平台上的程序员中广受欢迎,对于提高开发效率和代码质量具有重要作用。

    linux中强大编辑器vi命令集锦

    由于其强大的功能以及几乎在所有类UNIX系统中的普遍可用性,学会使用vi对于任何系统管理员和程序员来说都是必备技能之一。 #### vi编辑器的基础概念 vi编辑器主要包含三种操作状态: 1. **命令模式(Command mode...

    鸟哥的私房菜-linux学习必备

    《鸟哥的私房菜》是一本非常适合初学者学习Linux的资料,内容系统全面,是网管和程序员学习Linux不可或缺的参考书。Linux作为一个强大的开源操作系统,它广泛应用于服务器、桌面、嵌入式系统等领域。学习Linux不仅...

    Vi 命令集--比较全啦

    Vi 命令集是Unix/Linux环境中非常重要的文本编辑器,它的全称是visual edit,提供了丰富的文本操作功能。Vi可以用于创建、编辑和修改文本文件,尤其...学习和熟练运用Vi,是成为高级系统管理员和程序员的必备技能之一。

    shell常用命令

    对于初学者和中级程序员来说,掌握Shell的常用命令是必备技能。以下是一些关键的Shell命令及其用途: 1. **流程控制命令**: - `if` 语句:根据条件执行不同的代码块。例如: ```bash if [ -e file ]; then ...

Global site tag (gtag.js) - Google Analytics