前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux基本命令学习02

linux基本命令学习02

作者头像
黑泽君
发布2018-10-11 15:57:51
1.3K0
发布2018-10-11 15:57:51
举报
文章被收录于专栏:黑泽君的专栏

============================================================================= a.txt c:\abc\a.txt    windows写法(反斜杠) /abc/a.txt       linux写法(斜杠) ----------------------------------------------------------------------------- 相对路径表达方法 cat a.txt         如果不加任何路径说明,默认是当前目录下的文件。 cat ./a.txt       明确的指明,a.txt在当前目录下,这是一种相对路径的写法。 cat ../a.txt      明确的指明,a.txt在上一级目录下,这也是一种相对路径的写法。 cat ./../a.txt       明确的指明,a.txt在上一级目录下,这也是一种相对路径的写法(与上一种等同)。 cat ../2/a.txt a.txt   在上一级目录的2子目录下。 ----------------------------------------------------------------------------- 绝对路径,绝对路径总是从根目录开始的。 /home/zhujy/2/a.txt

============================================================================= 注意: 普通用户的主目录一般都是在/home/下 root用户的主目录在/目录下 ----------------------------------------------------------------------------- 常见的Unix/Linux系统目录如下: /:       Unix/Linux系统的根目录,包含Unix/Linux系统的所有目录和文件。 /etc:    有关系统设备与管理的配置文件。 /sbin:     存放系统启动时所需的运行程序。 /bin:    该目录中含有常用的命令文件。 /usr/local:   存放用户后期安装的应用程序文件。 /root:          超级用户主目录。 /dev:           接口设备文件目录,保存外围设备代号。(Unix/Linux系统把每个设备都映射成一个文件,这就是设备文件。) /home:          普通用户的宿主目录,通常将其设置在独立的分区。 ----------------------------------------------------------------------------- PC机上最多有4个IDE设备,可能是磁盘,也可能是CD/DVD设备。

(PC机上装的硬盘一般都是IDE硬盘:价格便宜、读写速度慢、不能热插拔) 在Unix/Linux中,对于IDE磁盘,使用“hd”表示,并且在“hd”之后使用小写字母表示磁盘编号。 磁盘编号之后是分区编号,使用阿拉伯数字表示。主分区的编号依次是1~4,扩展分区上的逻辑分区编号从5开始。

SATA和SCSI磁盘共同使用“sd”表示。常用存储设备的名称表示如表所示。

(服务器上装的硬盘一般都是SCSI硬盘)

============================================================================= Unix/Linux文件的命名规则: (1) 文件名最长可以达到256个字符,可由A~Z、a~z、0~9、.、-、_、等符号组成。 (2) 文件名区分大小写。 (3) 文件没有扩展名的概念。 (4) 使用“/”作为根目录和目录层之间的分隔符。 (5) 支持相对路径和绝对路径。 在Unix/Linux操作系统中也必须区分文件类型,通过文件类型可以判断文件属于可执行文件、文本文件还是数据文件。 在Unix/Linux系统中文件可以没有扩展名。 通常,Unix/Linux系统中常用的文件类型有5种:普通文件、目录文件、设备文件、管道文件和链接文件。 ----------------------------------------------------------------------------- windows中 a.txt,A.TXT是一样的 linux中 a.txt,A.txt是不一样的 ----------------------------------------------------------------------------- A.txt a.txt a.Txt a.tXt A.Txt 在linux中都不一样

============================================================================= 修改文件或目录的访问权限

法一:使用chmod命令和参数的方式: chmod [参数] 文件或目录名 chmod o+w a.txt      给其他用户添加写的权限 chmod u-r a.txt        给属主解除读的权限 u:属主,即文件或目录的所有者,拥有对文件最大的读写权限。 g:属组,即与文件属组有相同组ID的所有用户。 o:表示其他用户,通常只具有浏览权限。 a:表示以上所以用户。

法二:使用数字的方式: rwx rwx rwx 对应于 111 111 111 --- --- --- 对应于 000 000 000

000 001 010 011 100 101 110 111   0  1  2    3     4     5     6    7

rw- r-- ---   rwx rwx rwx   r-x -w- --x 110 100 000   6    4     0         7     7    7           5    2    1 chmod 640 1    chmod 777 1      chmod 521 1 ----------------------------------------------------------------------------- 对一个目录来讲,   如果没有r权限,那么就不能用ls命令查看目录的内容了(读权限)   如果没有w权限,那么就不能在目录下删除或者增加文件了(写权限)   如果没有x权限,那么就不能用cd命令来进入这个目录了(执行权限)

============================================================================= 修改文件的所有者   使用chown 用户名 文件或目录名   例如:chown root a.txt

修改文件的所有组   chgrp 用户名 文件或目录名   例如:chgrp root a.txt

============================================================================= vi默认是命令模式,   在命令模式下按i或者a进入输入模式。   在输入模式下按esc进入命令模式。 ----------------------------------------------------------------------------- 保存:   在命令模式下按 :w 文件名 退出:   在命令模式下按 :q ----------------------------------------------------------------------------- vi 命令后面没有加文件名时,默认会开启vi,但不会自动打开任何文件,如果在vi中输入了字符,那么就需要执行w命令的时候,后面加文件名。 vi 文件名 如果文件存在,那么就打开这个文件;如果文件不存在,那么就创建这个文件,那么执行w命令的时候,就不需要再写文件名。 :wq 保存同时并退出,不能写成:qw ----------------------------------------------------------------------------- 用vi打开一个文件,修改内容后,如果没有用 :w 保存,直接用 :q 退出的话会提示失败。 如果想不保存退出,那么用 :q! ----------------------------------------------------------------------------- 和很多基于图形的编辑器一样vi也提供撤销功能,对于一个编辑器来说,提供撤销功能是必要的。 用户可以在命令模式下输入“u” 就可以撤销上一次操作。 ----------------------------------------------------------------------------- vi的插入模式 a     光标位置右边插入文字 i      光标位置当前处插入文字 o     光标位置下方开启新行 O    光标位置上方开启新行 I      光标所在行首插入文字 A     光标所在行尾插入文字 ----------------------------------------------------------------------------- 退出vi ZZ    保存退出 :wq   保存退出 :x      保存退出 :w filename   保存到指定文件 :q     退出,如果文件修改但没有保存,会提示无法退出 :q!    退出,不保存 :!   命令暂时退出vi,执行相应命令 ----------------------------------------------------------------------------- vi的删除功能 在vi的输入模式下,用户可以使用Backspace(退格键)来删除光标前面的内容,还可以使用delete键来删除当前的字符。 此外,在vi的命令模式下还提供了几个按键用来删除一个字符或进行整行删除, x   删除当前光标所在的字符 X     删除光标前一个字符 D     删除光标所在开始到此行尾的字符 dd    删除光标所在的行 dG   删除光标所在开始到文件尾的所有字符 J      合并两行 ----------------------------------------------------------------------------- vi的行定位功能 Ctrl + f    向前卷动一个屏幕 Ctrl + b   向后卷动一个屏幕 G       到文件最后一行行首,G必须为大写 :$       到文件最后一样行尾 mG         到指定行,m为目标行数, :set nu      显示行号(这个命令很重要) :set nonu     显示行号(这个命令很重要) /内容            查找指定内容 ----------------------------------------------------------------------------- vi的文本查找功能 /字符串      查找指定字符串 n             寻找下一个 N                  回到前一个 ?             寻找上一个 /^字符串       查找以字符串开始的行 /字符串$      查找以字符串结尾的行 /a.b         查找字符串a到任意字符b ----------------------------------------------------------------------------- vi的文本替换功能 r           替换当前光标字符 :r 文件名      在光标当前位置载入另一个文件的内容 :开始行号,截止行号 s /源字符串/目标字符串/g         在指定行号范围内替换字符串(例子如下所示) :1,$ s /start/end/g                从第一行开始到文件最后,将字符串start全部替换为end ----------------------------------------------------------------------------- vi的set指令 :set ic     搜寻时忽略大小写 :set noic    搜寻时不忽略大小写 :set nu    显示行号 :set nonu     不显示行号

============================================================================= 小练习步骤:

1、进入root,先创建一个用户abc(注意:创建用户后需要设置用户密码)   useradd -d /home/abc abc -m -s /bin/bash    -s代表指定一个shell(这个bash shell更舒服更漂亮些)   useradd -d /home/abc abc -m -s /bin/sh        -s代表指定一个shell(默认sh shell) 2、退出root,登录到用户abc 3、用vi写一个c语言的hello world (注意:文件名叫a.c 如果是c语言的源代码文件,扩展名必须是.c) 4、编译这个程序(编译c语言的源代码文件)   gcc -o a a.c   -o a:意思是指定编译后的程序名为a。即要编译a.c这个源文件,编译后的可执行程序名字叫a 5、运行这个程序   linux默认不会在当前目录下查找可执行程序;   ./a   明确的告诉操作系统,a是在当前目录下。 ============================================================================= 如何设置语法高亮? SeccureCRT中的终端类型默认是VT100或者Xterm,我们要选择linux。字符集一定要是utf8 ----------------------------------------------------------------------------- 如何设置默认vi开启的时候,自动显示行号?  第一步,回到用户的主目录下的方法 cd 什么都不加回车即可。  第二步,回到主目录下,生成一个叫.vimrc的文件,文件名前面必须有个。  第三步,在.vimrc中输入set nu。  第四步,保存退出。 ----------------------------------------------------------------------------- shell 一个linux的字符界面会有很多种不同的shell,shell是字符界面的人机交互模式 sh是最古老的,也是最基本的unix的shell 如果在创建用户的时候,没有指定shell,那么登录这个用户的时候默认的shell是sh shell本身也是一个程序,一般在/bin目录下

============================================================================= gcc在linux下是操作系统自带的,因为linux操作系统本身就是用gcc编译的。

windows并不会自带gcc,在windows系统下如何使用gcc呢? 方法一,直接去gcc的官网下载安装版本; 方法二,安装QT的时候QT会带一个gcc的版本,gcc一般在qt的安装目录下。 找到gcc.exe在windows下的安装路径,然后把这个路径放入windows系统环境变量的path里面,在path的最后面加上 ;gcc的安装路径。

============================================================================= 如何设置linux系统可以在当前目录查找可执行程序的方法?   1,回到用户的主目录 cd   2,在用户的主目录下,打开文件.profile(在ubuntu系统),   .bash_profile(在redhat、centos系统下)   3,在.profile文件的最后,添加一行 export PATH=$PATH:.    注意这里要大小写敏感   4,保存退出   5,执行 source .profile      (redhat系统)source .bahs_profile 注意:以上所有的的修改只是针对具体某一个用户的,比如说用户a修改了,但用户b不会生效,比如说root修改了,那么其他用户也不会生效。

============================================================================= ifconfig       显示网络参数 ifconfig –a       显示网络配置信息

eth0           网络接口名称 Link encap      链路封装协议 Hwaddr      网络接口的MAC地址 Inet addr      IP地址 Bcast         广播地址 Mask              子网掩码 UP             网络接口状态标识,UP已经启用,DOWN已经停用 BROADCAST      广播标识,标识网络接口是否支持广播 RUNNING        传输标识,标识网络接口是否已经开始传输分组数据 MULTICAST      多播标识,标识网络接口是否支持多播 MTU,Metric     MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用 RX bytes         接收数据字节统计 TX bytes         发送数据字节统计 ----------------------------------------------------------------------------- route          网络路由设置 route               可以增加,修改,显示路由信息 ----------------------------------------------------------------------------- netstat        该命令监控网络状态,包括接口设置,IP路由,各种网络协议的统计 ----------------------------------------------------------------------------- ping        测试远程主机连通性 ping通过ICMP协议向远程主机发送ECHO_REQUEST请求,期望主机回复ECHO_REPLY消息 通过ping命令可以检查是否与远程主机建立了TCP/IP连接。

============================================================================= 一般服务器会放在机房,很多时候我们一般是通过一某个软件进行远程连接到服务器,然后再去工作。

如何把服务器上的abc.c文件传输到windows下去呢? 1、在CRT上的链接对话框右键打开   选择连接SFTP会话 2、在sftp里面要进入远程的路径和本地的路径,如下:   先用命令pwd 查看远程连接到的linux的目录   cd 1         进入远程连接到的linux的1目录   lcd \test   进入本地window目录 3、get abc.c        从远程目录得到文件abc.c,放入本地目录test ----------------------------------------------------------------------------- 如何把windows下的aaa.c文件传输到linux服务器去呢? 1、在CRT上的链接对话框右键打开 选择连接SFTP会话 2、使用命令   sftp> put aaa.c 3、在CRT下使用  cat aaa.c     查看aaa.c

============================================================================= windows下的http.tar.gz源代码文件的使用方法? 步骤零:在CRT上的链接对话框右键打开 选择连接SFTP会话 步骤一:先将windows的文件上传到linux   put http.tar.gz 步骤二:回到原始命令行界面 解压   gzip -d http.tar.gz (得到.tar文件)   tar -xvf http.tar (得到http目录) 步骤三:进入http目录   cd http 步骤四:编译这个源代码   make 步骤五:切换到root用户   su 步骤六:用root用户启动程序   ./myhttp start 当看到如下:   listen 80 success   myhttp begin 代表程序成功启动了(虽然不会写,但是我们会成功部署别人写好的程序啊!) 在windows浏览器打开 http://192.168.40.134/ 可以进行搜索哦! 然后在CRT上的链接对话框右键打开 在新窗口克隆 进入到 chen@ubuntu:~/Desktop/haha/01/http$ 目录下,编辑一个a1.c文件(内容为 hello world) 使用 gcc -o a.cgi a1.c 进行编译后 使用 ./a.cgi 运行得出结果 再在windows浏览器输入 http://192.168.40.134/a.cgi 回车 得到在网页显示的hello world 但是呢,这样显示有些丑,我们可以添加些内容 #include <stdio.h> int main() {   printf("<html>");   printf("<img src=aaa.jpg>");   printf("<font color=red size=48>");   printf("hello aheng\n");   printf("</font>");   printf("</html>");   return 0; } =============================================================================

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档