Linux知识点小结One
来源:互联网 发布:c语言,a 什么意思 编辑:程序博客网 时间:2024/06/09 19:57
ls -a
Linux 系统上的文件以.开头的文件被系统视为隐藏文件,仅用 ls 命令是看不到他们的。而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来。
ls –l
这个命令可以使用长格式显示文件内容 如果需要察看更详细的文件资料就要用到 ls -l 这个指令。
ls -F
在列出的文件 目录 名称后加一符号 例如可执行文件加 "*", 目录则加 "/"。
cd 这个命令是用来进出目录的,它的使用方法和在 dos 下没什么两样,但和dos不同的是Linux的目录对大小写是敏感的如果大小写拼写有误,你的cd操作是成功不了的。另外,cd 如果直接输入,cd 后面不加任何东西。会回到使用者自己的 Home 目录,假设如果是 root 那就是回到/root。这个功能同 cd ~是一样的。
mkdir 命令用来建立新的目录
如输入如下命令
mkdir work
将在当前目录下新建一个 work 目录
rmdir 用来删除已建立的目录
如输入如下命令
rmdir work
将删除已存在的空目录 work
*如果要删除的目录不为空的话,使用rmdir无法进行删除,使用命令:
[root@foundation0 Desktop]# rm 目录文件 -fr
cp 这个命令相当于 dos 下面的 copy 命令
具体用法是:
cp –r 源文件(source) 目的文件(target)
参数 r 是指连同源文件中的子目录一同拷贝
在我们的shell设置中,把cp -r的别名设置成了cp,两者功能相同。
5. rm命令
rm 这个命令是用来删除文件的
rm 命令常用的参数有三个-i,-r,-f
比如我现在要删除一个名字为 text 的一个文件
输入如下命令
rm –i test
系统会询问我们是否要删除 test 文件 敲了 y/n 确认是否要删除 test 文件
rm –r 目录名
这个操作可以连同这个目录下面的子目录都删除
功能比上面讲到的 rmdir 更强大 不仅可能删除指定的目录 而且可以删除该目录下所有文件和子目录。
rm –f 文件名
这个操作可以不经确认强制删除文件
*需要强调的是,rm 文件 -fr这个命令是十分危险的,当你不清楚它执行后的结果的时候请不要轻易使用,以免造成文件的丢失。
6. mv命令
mv 这个命令的功能是移动目录或文件
引申的功能是给目录或文件重命名
比如:
mv /tmp/xxx.tar /root
该命令将/tmp 目录下的 xxx.tar 文件移动到/root 目录下,需要注意的是mv此时和cp命令有着些许差别,mv会把移动文件的安全上下文属性保留,cp则会使用目标目录的安全上下文。
查看文件的安全上下文:
[root@foundation0 mnt]# ll file -Z
-rw-r--r--. root root unconfined_u:object_r:mnt_t:s0 file
这个是cp后的结果,安全上下文由mnt_t改为public_content_t。
[root@foundation0 mnt]# cp file /var/ftp/pub/file1
[root@foundation0 mnt]# ll /var/ftp/pub/file1 -Z
-rw-r--r--. root root unconfined_u:object_r:public_content_t:s0 /var/ftp/pub/file1
这个是mv后的结果,安全上下文未发生改变:
[root@foundation0 mnt]# mv file /var/ftp/pub/
[root@foundation0 mnt]# ll /var/ftp/pub/file -Z
-rw-r--r--. root root unconfined_u:object_r:mnt_t:s0 /var/ftp/pub/file
*安全上下文是linux系统中另外一种安全机制,与selinux是息息相关的。相当于给每个文件一个标签,通过安全上下文可以限制文件的功能。
文件重命名:
mv aaa.tar bbb.tar
则是将当前目录下的文件 aaa.tar 更名为 bbb.tar
7. cat命令
cat 这个命令是 linux 中非常重要的一个命令,它的功能是显示或连结一般的ascii文本文件。它的用法如下:
cat text
该命令显示 text 这个文件的内容
cat file1 file2
该命令依顺序显示 file1,file2 的内容
cat file1 file2>file3
该命令把 file1,file2 的内容结合起来再重定向>到 file3 文件中
8. more命令
more 是显示一般文本文件的指令,如果一个文本文件太长了超过一个屏幕的画面,用cat来看实在是不理想就可以试试 more。
用法如下:
more file1
9. pwd命令
pwd 这个命令的作用是显示用户当前的工作路径,直接输入 pwd 即可。
示例:
[root@foundation0 mnt]# cd /var/ftp/pub/
[root@foundation0 pub]# pwd
/var/ftp/pub
Linux中硬链接和软连接的区别:
1.原理上:
硬链接(hard link):A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两 个不同的文件名,两个文件名指向同一个文件,A和B对文件系统来说是完全平等的。如果删除了其中一个,对另外一个没有影响。每增加一个文件名,inode 节点上的链接数增加一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inode节点和对应的数据块被回收。注:文件和文件名是不同 的东西,rm A删除的只是A这个文件名,而A对应的数据块(文件)只有在inode节点链接数减少为0的时候才会被系统回收。
软链接(soft link):A是B的软链接(A和B都是文件名),A的目录项中的inode节点号与B的目录项中的inode节点号不相同,A和B指向的是两个不同的 inode,继而指向两块不同的数据块。但是A的数据块中存放的只是B的路径名(可以根据这个找到B的目录项)。A和B之间是“主从”关系,如果B被删除 了,A仍然存在(因为两个是不同的文件),但指向的是一个无效的链接。
2.使用限制上:
硬链接:a.不能对目录创建硬链接,原因有几种,最重要的是:文件系统不能存在链接环(目录创建时的".."除外,这个系统可以识别出来),存在环 的后果会导致例如文件遍历等操作的混乱(du,pwd等命令的运作原理就是基于文件硬链接,顺便一提,ls -l结果的第二列也是文件的硬链接数,即inode节点的链接数)
b:不能对不同的文件系统创建硬链接,即两个文件名要在相同的文件系统下。
c:不能对不存在的文件创建硬链接,由原理即可知原因。
软链接:a.可以对目录创建软链接,遍历操作会忽略目录的软链接。
b:可以跨文件系统
c:可以对不存在的文件创建软链接,因为放的只是一个字符串,至于这个字符串是不是对于一个实际的文件,就是另外一回事了
3.命令
硬:ln 源文件 链接名
软:ln -s 源文件 链接名
数据段:数据段(data segment)通常是指用来存放程序中已初始化的全局变量的一块内存区域。数据段属于静态内存分配。
代码段:代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读, 某些架构也允许代码段为可写,即允许修改程序。在代码段中,也有可能包含一些只读的常数变量,例如字符串常量等。
堆(heap):堆是用于存放进程运行中被动态分配的内存段,它的大小并不固定,可动态扩张或缩减。当进程调用malloc等函数分配内存时,新分配的内存就被动态添加到堆上(堆被扩张);当利用free等函数释放内存时,被释放的内存从堆中被剔除(堆被缩减)
栈(stack):栈又称堆栈, 是用户存放程序临时创建的局部变量,也就是说我们函数括弧“{}”中定义的变量(但不包括static声明的变量,static意味着在数据段中存放变 量)。除此以外,在函数被调用时,其参数也会被压入发起调用的进程栈中,并且待到调用结束后,函数的返回值也会被存放回栈中。由于栈的先进后出特点,所以 栈特别方便用来保存/恢复调用现场。从这个意义上讲,我们可以把堆栈看成一个寄存、交换临时数据的内存区。
使用fork函数得到的子进程从父进程的继承了整个进程的地址空间,包括:进程上下文、进程堆栈、内存信息、打开的文件描述符、信号控制设置、进程优先级、进程组号、当前工作目录、根目录、资源限制、控制终端等。
子进程与父进程的区别在于:
1、父进程设置的锁,子进程不继承(因为如果是排它锁,被继承的话,矛盾了)
2、各自的进程ID和父进程ID不同
3、子进程的未决告警被清除;
4、子进程的未决信号集设置为空集。
ping命令用来测试主机之间网络的连通性,执行ping命令会使用ICMP传输协议,发出要求回应的信息。
netstat命令用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况。
traceroute命令用于追踪数据包在网络上的传输时的全部路径,他默认发送的数据包大小是40字节。
route命令用来显示目前本机路由表的内容,并且还可以针对路由表中的记录来进行相应的添加、删除或修改等操作。
ifconfig命令用来来检测和设置本机的网络接口
sed [-nefri] ‘command’ 输入文本
常用选项:
-n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
-e∶直接在指令列模式上进行 sed 的动作编辑;
-f∶直接将 sed 的动作写在一个档案内, -f filename 则可以执行 filename 内的sed 动作;
-r∶sed 的动作支援的是延伸型正规表示法的语法。(预设是基础正规表示法语法)
-i∶直接修改读取的档案内容,而不是由萤幕输出。
常用命令:
a ∶新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c ∶取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d ∶删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i ∶插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~
s ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g!
cat /proc/cpuinfo:查看一台linux机器的CPU信息 du:查看该目录占用文件系统数据块的情况
cat /proc/swaps:查看SWAP分区信息
df -lh:查看硬盘信息
du-h:查看当前目录下所有目录以及子目录的大小;
dd:磁盘维护命令
df [选项][文件]显示制定磁盘文件的可用空间,如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间都会被显示。
查看文件内容使用的命令:cat,less,more都可以查看,只是查看的方式不一样,less可以让光标上下移动,more只能用enter键往下翻,cat的话直接跳到最后一页了。
backtrace bt 打印当前的函数调用栈的所有信息。info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID。前面有*的是当前调试的线程。set scheduler-locking 线程调试显示线程状态,off 不锁定任何线程info break 可列出所有断点信息,info break 后也可设置要查看的break num
在linux命令中reboot是重新启动,shutdown -r now是立即停止然后重新启动,都说他们两个是一样的,其实是有一定的区别的。
shutdown命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一个时间段。
精确时间的格式是hh:mm,表示小时和分钟,时间段由+ 和分钟数表示。系统执行该命令后会自动进行数据同步的工作。
该命令的一般格式: shutdown [选项] [时间] [警告信息]
命令中各选项的含义为:
- k 并不真正关机而只是发出警告信息给所有用户
- r 关机后立即重新启动
- h 关机后不重新启动
- f 快速关机重启动时跳过fsck
- n 快速关机不经过init 程序
- c 取消一个已经运行的shutdown
需要特别说明的是该命令只能由超级用户使用。
例1,系统在十分钟后关机并且马上重新启动: # shutdown –r +10
例2,系统马上关机并且不重新启动:# shutdown –h now
halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。
halt命令的部分参数如下:
[-f] 没有调用shutdown而强制关机或重启
[-i] 关机或重新启动之前,关掉所有的网络接口
[-p] 关机时调用poweroff,此选项为缺省选项
reboot的工作过程与halt类似,其作用是重新启动,而halt是关机。其参数也与halt类似。reboot命令重启动系统时是删除所有的进程,而不是平稳地终止它们。因此,使用reboot命令可以快速地关闭系统,但如果还有其它用户在该系统上工作时,就会引起数据的丢失。所以使用reboot命令的场合主要是在单用户模式。
init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动
语法:tar [主选项+辅选项] 文件或者目录
使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。
c 创建的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。相当于打包。
x 从档案文件中释放文件。相当于拆包。
t 列出档案文件的内容,查看已经备份了哪些文件。
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩或解压? 一般格式为xx.tar.gz或xx. tgz
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩或解压?一般格式为xx.tar.bz2
-v :压缩的过程中显示文件!这个常用
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加其他参数!
-p :使用原文件的原来属性(属性不会依据使用者而变)
- /var/log/messages — 包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。
- /var/log/dmesg — 包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。
- /var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。
- /var/log/boot.log — 包含系统启动时的日志。
- /var/log/daemon.log — 包含各种系统后台守护进程日志信息。
- /var/log/dpkg.log – 包括安装或dpkg命令清除软件包的日志。
- /var/log/kern.log – 包含内核产生的日志,有助于在定制内核时解决问题。
- /var/log/lastlog — 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。
- /var/log/maillog /var/log/mail.log — 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。
- /var/log/user.log — 记录所有等级用户信息的日志。
- /var/log/Xorg.x.log — 来自X的日志信息。
- /var/log/alternatives.log – 更新替代信息都记录在这个文件中。
- /var/log/btmp – 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。
- /var/log/cups — 涉及所有打印信息的日志。
- /var/log/anaconda.log — 在安装Linux时,所有安装信息都储存在这个文件中。
- /var/log/yum.log — 包含使用yum安装的软件包信息。
- /var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。
- /var/log/secure — 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。
- /var/log/wtmp或/var/log/utmp — 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。
- /var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。
除了上述Log文件以外, /var/log还基于系统的具体应用包含以下一些子目录:
- /var/log/httpd/或/var/log/apache2 — 包含服务器access_log和error_log信息。
- /var/log/lighttpd/ — 包含light HTTPD的access_log和error_log。
- /var/log/mail/ – 这个子目录包含邮件服务器的额外日志。
- /var/log/prelink/ — 包含.so文件被prelink修改的信息。
- /var/log/audit/ — 包含被 Linux audit daemon储存的信息。
- /var/log/samba/ – 包含由samba存储的信息。
- /var/log/sa/ — 包含每日由sysstat软件包收集的sar文件。
- /var/log/sssd/ – 用于守护进程安全服务。
卸载命令: rpm -e [package name]
查看挂载状态: mount
查看磁盘情况: df
查看端口:netstat –anlp
- Linux知识点小结One
- Linux知识点小结
- Linux知识点小结
- LINUX下易用知识点小结
- Linux学习笔记:文件权限 知识点小结
- 知识点小结
- 知识点小结
- 知识点小结
- 知识点小结
- 知识点小结
- 知识点小结
- 知识点小结
- 思想小结--one
- Oracle和Linux关于双引号、单引号的知识点小结
- linux期末复习知识点小结(一)——Introduction
- linux期末复习知识点小结(三)—— Shell
- Linux期末复习知识点小结(四)——进程
- Linux期末复习知识点小结(五)——文件系统
- IScroll 实践指南(上)
- PL/SQL Developer(解压版)连接64位的Oracle11g
- Struts2支持的结果类型
- 最大生成树
- hdu 4276 The Ghost Blows Light 树形dp 时间优化技巧
- Linux知识点小结One
- IScroll 实践指南(中)
- Android中Toolbar的使用
- Torch7在Windows8.1上安装,转载请注明出处
- java内部类
- CSS3实现整屏切换效果
- 华盛顿大学--推荐系统(协同过滤)
- Hibernate中性能优化之缓存
- shiro之登录验证过程