# linux 入门必备

linux 入门必备

登录后输入 ip  addr    查看本机得ip地址

ping  www.baidu.com         查看网络是否连通

ctrl+c   停止

cmd  模式下 ipconfig /all   查看自己电脑主机信息

##或 -  表示注释开始      tab  是查看命令帮助  比如ping命令  输入p tab 

通配符共有3个: “*”,“?”,“[]” 通配命令

\*  - 用于匹配文件名中任意长度的字符串;

?  - 只匹配一个字符;

[] - 用于匹配所有出现在方括号内的字符。可以使用短线“-”来指定字符集范围。如:ls  text[1-3]或 ls test[a-z]

ls 表示显示这个目录下得文件

man 帮助命令 比如 man ping 查看这个命令得帮助 也可指定是哪一卷得内容

目 录 内 容
/usr/share/man/man1 普通命令和应用程序
/usr/share/man/man2 系统调用
/usr/share/man/man3 库调用,主要是libc()函数的使用文档
/usr/share/man/man4 设备驱动和网络协议
/usr/share/man/man5 文件的详细格式信息
/usr/share/man/man6 游戏
/usr/share/man/man7 文档使用说明
/usr/share/man/man8 系统管理命令
/usr/share/man/man9 内核源代码或模块的技术指标

man 命令在显示手册页时实际调用less 完成显示,J K可以上下翻动,空格用于向下翻页。Q键退出。


su 表示切换 sudo 表示超级特权用户(root)(如果是第一次需重置密码 :~$ sudo passwd root)

   sudo su  切换到特权用户

su 用户名  切换到普通用户

--------



pwd 显示当前目录    /表示根目录  (首位就是根目录,中间表示分割符)   cd表示切换目录       



cd /    到达根目录 

cd ..   返回上一级

cd 或cd~ 进入主目录

cd ./*进入当前目录下得子目录、

-------



用法: ***\*ls  . . .[OPTION] . . .[FILE]. . .\**** 

 

常用参数:

1.不带任何参数  列出当前目录下的所有文件和子目录

2. -F       分类显示,方便阅读

3. -a       显示隐含文件

4. -l       查看文件的各种属性

 dir 和 ls 差不多,就比ls 功能少

​    vdir 相当于 ls -l 命令 

date 查看当前时间


*创建命令 mv*

 touch 创建文件、
 
echo '1' >  文件名      往文件里输入数据一个字符
cat xxx  查看文件得内容

vi xxx    编辑这个文件 按esc       shift+:         wq    结束

mkdir 创建目录 mkdir -p /bin/bin 创建多级目录 mkdir -p bin/bin 创建多级目录

mv 移动 mv 目录名 目录名


*移动命令 mv*

用法:  mv   ***\*. . .[OPTION]  源文件  目标文件\**** 

   

常用参数:

   不带任何参数   将源文件移动到目标文件,注意:如果目标文件存在则***\*替换\****;

   -i       将源文件移动到目标文件,如果目标文件存在则提示是否***\*替换\****;

 -b        将源文件移动到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~

*复制命令 cp*

用法:  cp   ***\*. . .[OPTION]  源文件  目标文件\**** 

   

常用参数:

   不带任何参数   将源文件复制到目标文件,注意:如果目标文件存在则***\*替换\****;

 -i       将源文件复制到目标文件,如果目标文件存在则提示是否***\*替换\****;

 -b        将源文件复制到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~

 -r        将子目录及其中的文件一起复制到另一个子目录下

*删除命令 rm*

删除命令可以一次永久性删除一个或几个文件(包含目录)

用法:  rm   ***\*. . .[OPTION]. . . [FILE]. . .\****   

   

常用参数:

   不带任何参数   删除文件或相应目录,不给予任何提示;

 -i       删除文件或相应目录,删除时进行提醒;

 -f        强制性删除文件或相应目录;

 -r        将子目录及其中的文件一并删除。***\*(慎用!特别时在root 权限下)\****

*文件链接 ln* 相当于定义了别名 链接之后相当于两个文件指向同一个东西

ln  建立文件链接

用法:  ln   ***\*. . .[OPTION]  源文件  目标文件\**** 

常用参数:

   不带任何参数   创建硬链接,ls -i 查看可以看到两个文件的inode 值一致;硬链接

   -s       创建软链接,即别名,如果源文件删除,则软链接(别名)也无

​          法访问。软连接

*改变文件所有权 chown 和 chgrp*

drwxr-xr-x   2 root root  4096  71 23:32 video    

root root 为用户和属组

第一位表示    目录 d  链接 l  文件什么都没有

rwx  这三位 表示 r 读 w写  x执行得权限

r-x  同组得其他成员  有的权限

r-x  其他组得成员对文件有什么权限

改变文件所有权 chown 和 chgrp

chown 命令用于改变文件的所有权。

 

用法:  chown   . . .[OPTION] [OWNER][:[GROUP]]  FILE . . .

chown  root 文件名  改变用户 

chown : root 文件名   改变属组

chown : 文件名 用户名   改变文件得属组,和用户


 

 

常用参数:

   不带任何参数   改变单个或多个文件的属主和属组; 

   -r       改变一个目录及其下所有文件(和子目录)的所有权设置。

 

 

chgrd  用于单独设置文件的属组。

 

用法:  chown   ***\*. . .[GROUP]  FILE . . .\****

  chgrp    nogroup    text.txt         

*改变文件权限 chmod*

chmod 用于改变一个文件的权限。它以“用户组 +/- 权限”的表达方式来增加/删除相应的权限。具体来说,用户组包括了文件属主(u)、文件属组(g)、其他人(o) 和所有人(a),而权限则包括读取(r、w、x) 读写执行

用法: chmod . . .[OPTION] . . .[FILE]. . .

chmod  666       第一个6表示用户  第二个6表示组  第36表示其他人  都为6表示所有人得权限rwx 都可用

 

例:chmod u+x test.txt                           

 chmod u-x test.txt                           

 chmod ug=wr、o=r  text.txt                      

 useradd  xx    增加用户  

groupadd    xx   增加组       

useradd  -g  用户得名字  组得名字  增加用户并指定组

passwd 用户得名字  为这个用户设置新密码

阅读文件的头部和尾部: head 和 tail\

用法:  head   /   tail  文件名 

   

常用参数:

   不带任何参数   显示文件的头部/尾部 10;

   -n       按指定的行数显示文件的头部/尾部 ;

*查看文本文件: cat 、more 和 less*

cat命令用来一次性查看全部文本文件的内容,后跟文件名作为参数.也可以带上 -n 显示每行的行号。如果文件长达几十上百页,不建议使用 cat.

 

more 命令用来分页查看文本文件。空格翻页;回车向下滚动一行;Q键退出。

 

less更人性化的文本阅读工具。  

*编辑器: vim*

vim 是UNIX 和 Linux 上标配的编辑器,功能十分强大。

用法 :

vim file  

或  vim 

1.编辑保存文件

分插入和命令两种模式。

*插入模式*

操作:输入字符,并可以按光标键移动输入字符位置.

命令 操作
a 在光标后插入
i 在光标所在位置插入
o 在光标所在位置的下一行插入
Esc 进入命令模式
: 进入行命令模式

*命令模式*

  执行除输入字符之外的所有操作,包括保存、搜索、移动光标等。

vim 启动默认是在命令模式,如果在编辑模式,需要按 Esc 切换回命令模式.

可以使用光标键控制上下左右移动,或者 h、j、k、l移动。

*保存和退出*

保存文件、退出等需要切换到行命令模式,在插入模式下输入 Esc 再 输入

 :w  :q 或 :wq 等。

前提:须切换到命令模式。注意组合命令执行的顺序:w ->q ->!
命令 操作
:w 保存文件
:w filename 另存为filename
:q 退出Vim
:q! 强行退出,放弃保存

*搜索字符串*

前提:须切换到命令模式

/string 用于向下搜索一个字符串       按n往下搜索

?string 用于向上搜索一个字符串

 

如果需要启动或关闭大小写敏感,执行:

:set ignorecase                                 

或

:set noignorecase

*替换字符串*

前提:须切换到命令模式。set nu显示行号

语法 :  :[range]s/pattern/string/[c、e、g、i]

pattern 被替换得字符串

string 替换得字符串

这条命令将 pattern 所代表的字符串替换成 string。开头的range 用于指定替换作用的范围,如“1,10” 表示从第1行到第10行,“1,$”表示从第1行到最后一行,也就是全文。全文也可以用 “%” 表示。

最后的方括号是可选选项,含义如下:

标 志 含 义
c 每次替换前询问
e 不显示错误信息
g 替换一行中的所有匹配项(这个选项通常需要使用)
i 不区分大小写

如Windows 环境下的源码经常会有 “^M”的字符,要清除可以使用下面的命令:

:%s/^M$//g

*删除、复制、粘贴*

前提:须切换到命令模式。

命令 操作
x 删除光标所在位置的字符
dd 删除光标所在的行, 2 dd 表示删除2行
D 删除光标所在位置到行尾之间所有的字符
d 普遍意义上的删除命令,和移动命令配合使用。例如dw 表示删除光标所在位置到下一单词词头之间所有的字符
yy 复制光标所在的行
y 普遍意义上的复制命令,和移动命令配合使用。例如yw表示复制光标所在位置到下一个单词词头之间所有的字符
p 在光标所在位置粘贴最近复制/删除的内容

*撤销和重做*

前提:须切换到命令模式。

命令 操作
u 撤销一次操作
Ctrl+R 重做被撤销的操作

前提:须切换到命令模式。

语法 : :[range]s/pattern/string/[c、e、g、i]

*程序员特有配置*

:syntax  on    ##  语法高亮                      

:set autoindent    ##  自动缩进                      

:set shiftwidth=4   ##  设置Tab 键对应的空格数

查找和定位常用命令

作用:  在指定范围内迅速查找到文件。

用法:  find  [OPTION]  [path . . .]  [expression]

 

例:

find -name  test.txt   

【OPTION选项】

特殊情况才会使用,建议日后查帮助

常用参数:

-type       查找时指定文件的类型,可使用参数如下表;

-atime n     查找最后一次使用在n天前的文件,n 使用负数表示;  

-mtime n    查找最后一次修改在n天前的文件; 

-maxdepth n     查找目录的最大深度

-mindepth n     从指定的目录的第几层深度开始查找
参数 含义 参数 含义
b 块设备文件 f 普通文件
c 字符设备文件 p 命名管道
d 目录文件 l 符号链接

find ./ -type f 查找普通类型得文件

stat xx 查看这个文件详细得更改时间 和详细信息

1.1.1. *更快速的定位文件 - locate 命令*

作用:  火箭般的速度定位文件。

 sudo  updatedb   更新数据库

用法:  locate  xx

*查找文件内容 - grep 命令*

作用:  在文件中寻找某些信息。

用法:  grep [OPTIONS]  PATTERN [FILE...]  ## pattern 使用基础正则表达式

 sudo  updatedb   更新数据库

grep  open  ./test.c 


-------------

gcc   文件名 -o  hello    ##编译源代码,并把可执行文件命名为 hello 

./  hello         执行这个生成得文件

*编译常用选项*

选 项 功 能
-c 只激活预处理、编译和汇编,生成.o 目标代码文件
-S 只激活预处理和编译,生成扩展名为.s的汇编代码文件
-E 只激活预处理,并将结果输出至标准输出
-g 为调试程序(如gdb)生成相关信息
-O 等同-O1,常用的编译优化选项
-Wall 打开一些很有用的警告选项,建议编译时加此选项。

注意:-c 选项在编写大型程序是必须的,多个文件的源代码首先需要编译成目标代码,再链接成执行文件。如果由多个源文件,工程做法建议采用 makefile 。

*在Windows让编程效率飞起来*

*3.1 Ubuntu安装Samba 服务器*

  确认安装:  dpkg -l | grep samba     查询是否安装了 dpkg -l | grep为关键字

  安装:    sudo apt-get install samba samba-common

  卸载:    sudo apt-get autoremove samba

 ***\*Samba服务器配置\****

 

sudo vi  /etc/samba/smb.conf    为这个服务器开启路径 进行配置

在文件最后添加

 

[Share]

comment=This is samba dir

path=/home/用户得目录名/

writable=yes

browseable=yes

 退出文件后 命令行

增加samba 用户

sudo smbpasswd -a 用户名       为这个用户增加密码

***\*启动和关闭\****

 

启动Samba服务器:   sudo service smbd start
关闭Samba服务器:  sudo service smbd stop




若无法访问请执行


sudo apt-get install daemon
sudo apt-get install libtalloc2
重启Linux系统即可

在Windows目录输入 \自己得IP地址 登录到文件侠便可操做linux /home/用户名/ 这个文件侠内得文件

其他命令

netstat -ap //查看端口占用情况
ps -ef grep 程序名 //输出这个程序的信息程序名写一半就是同名这一半的所有信息(当前运行的程序)包括id
netstat -ap | grep 程序名 //输出程序占用的进程端口等信息
netstat -api //当前所有api占用的情况

kill 程序id//关闭程序
!命令的开头一部分 \表示将最近执行的命令 以这个开头的重新执行

猜你喜欢

转载自blog.csdn.net/qq_45743563/article/details/107076045