Linux | 零碎知识小贴士

谈到Linux,关于其的有文件、用户、权限、系统和网络,理应掌握基础命令、熟悉目录结构、编写基本的shell以及深谙网络应用;

一、shell环境变量配置文件

  • 用户主目录下的.bash_profile、.bashrc和.bash_logout只对某一个用户有效;

  • /etc下的profile和profile.d文件夹是为所有的用户设置环境变量等信息;

  • 当用户登录时 ~/.bash_profile文件仅仅执行一次,默认情况下,设置一些环境变量,执行 ~/.bashrc文件,用户退出登陆时,执行 ~/.bash_logout;

  • 用户第一次登陆时,执行/etc/profile,并从/etc/prpfile.d目录中的配置文件中搜集shell的设置;

二、$相关符号定义

$$:当前命令的进程标示数
$*:所有的位置参量
$@:与$*类似,但是当用双引号进行转义时,"$@"能够分解为多个参数,而"$*"合并成一个参数;
$#:包括位置参数的个数,不包含命令名;
$?:代表命令或者shell执行后的返回状态码;

三、OSI模型各层协议

 物理层: RJ45 、 CLOCK 、 IEEE802.3 (中继器,集线器,网关)
 数据链路: PPP 、 FR 、 HDLC 、 VLAN 、 MAC (网桥,交换机) 
 网络层: IP 、 ICMP 、 ARP 、 RARP 、 OSPF 、 IPX 、 RIP 、 IGRP 、 (路由器)
 传输层: TCP 、 UDP 、 SPX
 会话层: NFS 、 SQL 、 NETBIOS 、 RPC  
 表示层: JPEG 、 MPEG 、 ASII 
 应用层: FTP 、 DNS 、 Telnet 、 SMTP 、 HTTP 、 WWW 、 NFS 

四、malloc/free和new/delete的区别

  • 前者是C/C++的标准库函数,后者是C++运算符;

  • 对象在创建时自动调用构造函数,在消亡之前自动调用析构函数,由于前者是库函数而不是运算符,不在编译器控制范文内,不能讲后者任务附加到前者上;

  • 后者返回void指针,前者返回分配类型变量的指针;

五、硬连接和软连接的区别

  • 原理

硬连接:A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件名指向同一个文件,A和B对文件系统来说是完全平等的。如果删除了其中一个,对另外一个没有影响。每增加一个文件名,inode节点上的链接数增加一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inode节点和对应的数据块被回收。

软连接:A是B的软链接(A和B都是文件名),A的目录项中的inode节点号与B的目录项中的inode节点号不相同,A和B指向的是两个不同的inode,继而指向两块不同的数据块。但是A的数据块中存放的只是B的路径名(可以根据这个找到B的目录项)。A和B之间是“主从”关系,如果B被删除了,A仍然存在(因为两个是不同的文件),但指向的是一个无效的链接。

  • 区别

硬连接不能对目录建立连接,软连接可以;硬连接不能跨文件系统,软连接可以;硬连接不能对空文件建立连接,软连接可以;

六、权限相关

  • 文件默认权限是755,目录的默认权限是644;

七、常用命令总结

文件相关:
mkdir rmdir | touch rm | cat more less head tail | ls ln find | 
wc grep sed awk | cp mv
系统管理相关:
stat who whoami uname hostname | which whereis | top uptime | 
ps kill | df du | netstat ifconfig ping
关机重启:
reboot halt | shutdown -r -h now
压缩和解压缩:
tar -cvf source destination 只打包不压缩
tar -zcvf source destination 打包并用gzip压缩
tar -jcvf source destination 打包 并用bzip压缩
解压缩将c替换为x即可 
用户及用户组管理:
/etc/passwd /etc/group /etc/shadow /etc/gshadow
useradd userdel adduser groupadd groupdel
su root 
/etc/profile bash_profile .bash_rc

八、Linux网页版小知识

  1. 查看和修改PATH环境变量

  2. Linux中提取文件名和后缀名

Linux常用命令 Linux目录结构 Linux基础知识

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,950评论 9 468
  • 转载自:http://blog.csdn.net/hguisu/article/details/6122513原作...
    miaoiao阅读 5,437评论 0 7
  • Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本...
    偷风筝的人_阅读 8,487评论 1 17
  • 文 · 钿鑫 人生若只如初见,何事秋风悲画扇? 等闲变却故人心,却道故人心...
    董钿鑫阅读 2,578评论 0 0
  • 据说,有一个叫徐樾的人,确信自己理解了王阳明心学的真谛。王阳明就让他举例子说明,徐樾就兴奋地举起例子来,他举一个,...
    元初阅读 2,463评论 0 0