linux随堂笔记
Linux的bg和fg命令
我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。
假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl+Z ,挂起这个程序,然后可以看到系统提示(方括号中的是作业号):
[1]+ Stopped /root/bin/rsync.sh
然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)
#bg %1
[1]+ /root/bin/rsync.sh &
用 jobs 命令查看正在运行的任务:
#jobs
[1]+ Running /root/bin/rsync.sh &
如果想把它调回到前台运行,可以用
#fg %1
/root/bin/rsync.sh
这样,你在控制台上就只能等待这个任务完成了。
fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的
一.& 最经常被用到
这个用在一个命令的最后,可以把这个命令放到后台执行
二.ctrl + z
可以将一个正在前台执行的命令放到后台,并且暂停
三.jobs
查看当前有多少在后台运行的命令
四.fg
将后台中的命令调至前台继续运行
如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
五.bg
将一个在后台暂停的命令,变成继续执行
如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
wpa supplicant,wifi扫描与连接
wpa_supplicant的配置
启动后台运行
和iw命令有些不同,如果要运行wpa_supplicant的话,要先启动其在后台运行。这一步感觉就已经将网卡激活了。如果没有就再运行一次$ ifconfig wlan0 up命令
$ wpa_supplicant -D nl80211 -i wlan0 -c /etc/wpa_supplicant.conf -B
-
-D <driver name>驱动程序名字(nl80211或west)
-
-i <interface name> 网卡名字
-
- c <conf file dir> 配置文件
-
-B 后台运行
驱动程序的名字在tina或者openwrt上可能已经初始化的适合运行过了
wpa_cli 有命令和交互的方式进行操作,v831的tina貌似没用交互模式,只有命令模式
wpa_cli -i wlan0 scan //搜索附件wifi热点
wpa_cli -i wlan0 scan_result //显示搜索wifi热点
wpa_cli -i wlan0 status //当前WPA/EAPOL/EAP通讯状态
wpa_cli -i wlan0 ping //pings wpa_supplicant
wpa_cli -i wlan0 add_network //添加一个网络连接,会返回<network id>
wpa_cli set_network <network id> ssid '"name"' //ssid名称
wpa_cli set_network <network id> psk '“psk”' //密码
wpa_cli set_network <network id> scan_ssid 1 //network id
wpa_cli set_network <network id> priority 1 //优先级
保存连接
断开连接
连接已有连接
wpa_cli -i wlan0 list_network //列举保存过得连接
wpa_cli -i wlan0 select_network <network id> //连接指定的ssid
wpa_cli -i wlan0 enable_network <network id> //使能制定的ssid
如果是静态IP
-
192.168.1.119 为要设置的静态ip
-
255.255.255.0 为要设置的子网掩码
-
192.168.1.1 为要设置的网关
如果无法上网
- kill 掉 wpa_supplicant 和 dhclient 的进程 以重新测试
- 检查网卡名
- 检查配置文件
- -D更换驱动
- dns问题
怎么查看linux用户列表
1、打开linux系统,在linux的桌面的空白处右击。2、在弹出的下拉选项里,点击打开终端即可进入命令行。
3、然后输入命令行cat/etc/passwd,直接按下回车键即可。
4、然后就会显示很多的信息,所有的用户都在这里面了。
linux与openwrt
bash与ash
由于一般linux都是bash的,但是openwrt是ash,所以需要再gcc的时候转换一下格式才能在v831上识别得到
在全志的开发手册可以下载全套工具链,其中就有能够转换成ash的gcc工具。
https://download.csdn.net/download/h12321hzhy/15451150
在sipeed提供的工具链中也有这样的工具:
路径为:
将脚本放入系统的路径中,即不需要输入路径即可直接用命令操作:
为了方便地使用arm-linux-gcc指令,需要打开bash.bashrc文件,在里面任何一行添加
export PATH=$PATH:/usr/local/arm/4.1.2/bin
4.1.2是4.1.2.tar.gz解压缩得来,arm-linux-gcc指令就放在bin里面,这个软件不需要安装,解压缩即可用
bash.bashrc放在/etc目录下,每次打开一个终端都需要执行一次该文件,写在里面就可以避免每次打开终端都需要输入arm-linux-gcc指令存放路径
用于将/opt/toolchain-sunxi-musl/toolchain/bin路径添加到系统的环境变量PATH中。PATH环境变量是用来指定系统在哪些路径查找可执行文件的,而这个命令的作用是让系统能够在/opt/toolchain-sunxi-musl/toolchain/bin路径下查找可执行文件。具体来说,这条命令使用了export命令来将PATH变量的值更新为原值加上新路径。最终,该路径将会在终端窗口当前会话中生效,也可以将该命令添加到.bashrc或.bash_profile文件中,让该环境变量每次启动终端时自动生效。