linux学习笔记(1)

来源:互联网 发布:专业流量控制软件 编辑:程序博客网 时间:2024/06/06 06:49

一.文件属性与权限   $ ls -l 


drwxr-xr-x  23  liyankun  liyankun  4096   May 4 09:49  application

文件类型和权限  连接数   拥有者 所属用户组  文件大小  最后修改日期文件名


文件类型和权限 

    -       rwx        r-x     r-x  

文件类型  拥有者  所属用户  其他

第一个字符用于描述文件类型,可能的值有:  

-  :普通文件

d :目录

l :软连接

b :块设备  如 磁盘

c :字符设备,如 鼠标  键盘

s :套接字 socket文件

  p :命名管道文件


 二.常用命令

对于文件操作:ls 、cd、cp、rm、mv。

对于磁盘操作:df 、fu、dd、fsck、mount

df:查看所有磁盘的使用量



压缩和解压:

主要三种类型文件:tar.gz    tar.bz2   tar.xz

解压:x

 $  tar  -vx  -f    filename    或者  $   tar   -vxf   filename   如果是


压缩:c

 $  tar tar -zcvf  filename.tar.gz    files

$  tar tar -jcvf  filename.tar.gz    files

$  tar tar -jcvf  filename.tar.gz    files


三.从源码安装软件

源码安装离不开安装三部曲,在此之前,先用make clean 或者make distclean去除目标文件。

1.configure :用来检查待安装源码的linux系统的相关属性,创建makefile文件。随后的安装信息都是从这一步获取的。

2. make :make 根据makefile的指示来进行编译工作。

3. make install :make根据makefile里面关于install的项目,将上一个编译完成的文件安装到预定目录中,一般有etc,lib,bin,man分别代表,配置文件,函数库,执行文件和线上说明文件。



四.了解IP地址

IPV4  由A,B,C,D四个字节组成,A B C,代表网络地址,D代表主机号。子网掩码也是一个四字节的数,比如255.255.255.0,与IP地址 按位与,就是主机地址。 一个子网最多有254个主机,因为0作为网络地址,255用作广播地址,如果向192.168.1.255发送信息,则整个子网下的所有主机都能收到信息。前提是发送者也在这个子网中。

后来采用192.168.1.1/24  表示前24位都是1。


手工设定IP:$   ifconfig  eth0  192.168.1.252    netmask 255.255.255.0 

在私网中IP一般自动获取,将ifcfg-eth0文件中的BOOTPROTO=static 改为 ==dhcp。


SHELL:

shell是命令行解释和执行器,它是介于使用者和linux操作系统核心程序(kernel)之间的一个接口。

shell有很多种,Bash(bourne again shell)是linux经典shell


五.linux最小系统的文件组织结构






















bin:重要的可执行文件,shell命令

Boot:引导配置文件  内核

dev:设备文件

etc:系统专有配置文件

lib:重要的共享库和内核模块

media:可移动设备挂接点

mmt:其他文件的临时挂接点

opt:附加应用软件包

sbin:重要的系统可执行文件

srv:本系统提供的用于服务器的数据

tmp:临时文件

usr:文件系统的第二层

var:可变数据


六,shell编程的基本要素

1、  #后是注释,但 #!不是注释

2、  exit是一个库函数,exit(1)表示发生错误退出 ,exit(0)表示正常退出,在shell中调用完程序后,用echo$?可以看到exit值。

3、变量

 给变量赋值, =两边不能有空格。但是取一个变量的值很简单,只需要前面加一个$,即使是在“ ”内的字符串也管用。所以要注意。比如:

sum=20

echo “we have $sumapples” 结果并不会输出“we have 20apples” 因为shell一直在搜$sumapples这个变量,而实际上并没有这个值,所以要改为 echo “we have ${sum}apples” 就可以了。

4、运算及stdout

例如:weight=1

           weight=$weight+1

   echo $weight    运算结果不是2 而是  1+1   。若要达到目的  用以下方法

⑴expr表达式     weight=' expr $weight   +   1' 注意+两边有空格,不然依然是以字符串的方式赋值,‘符号与$语法等效, 用于获取stdout内容,expr实际是一个命令,表达式计算结果输出到stdout中。

做乘法时要注意,* 在shell中有特殊含义,所以要写成 \* 或者用 " "括起来。   (1)这种方式比较古老。

⑵let数学表达式   

eg:   let "weight+=1"  或者 let "weight=$weight+1"

⑶(())方法与let相似 

  ((weight+=1))    ((weight=$weight+1))

⑷$[ ]   将中括号内的表达式作为运算先计算结果再输出  

weight=$[$weight+1] 




0 0
原创粉丝点击