Linux下实现开机启动图形界面以及自动切换shell

做这件事的意义

最近在装linux的时候,了解到一款好用的shell--fish
然而在按照wiki教程把fish作为登录shell之后
我的linux登录不上了。
查了一下,网上有人建议不要将fish设置成默认的shell。。。
这显然不靠谱嘛
有了图形界面之后,每次登陆之后还要手敲一个startx进去
总之各种不方便

步骤

在第一次登录启动图形界面,其他时候启动fish

本例中默认shell是bash
如果使用的不是bash,请自行查找资料确定启动时调用的脚本。

修改~/.bashrc,在文件尾加入以下内容:

logged_count = `who | wc -l`  
if [ $logged_count == 1 ]
then exec startx
else exec fish
fi

其意义是在bash初始化时获取当前登录的用户数量,如果是1个,则启动图形界面(如果启动图形界面的命令不是startx,则替换成相应的命令即可)

如果登录用户多于1个,则启动fish。

实际测试结果比较理想,既可以达到自动启动图形界面的目的,又可以免去只能登陆一个终端的尴尬。

(不过判断方式比较简单粗暴,只适用于个人用户在自己的主机使用,如果需要远程登录的话得手动启动图形界面,相信了解远程登录的用户也可以解决这种问题。)

如果只需要启动fish

只需要在~/bashrc最后添加一句话:
exec fish
即可。

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

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,667评论 9 468
  • 在前端工程化普及的今天,前端开发的同学几乎不可避免地要使用自动化脚本进行项目构建,而这些脚本基本上都通过 Shel...
    慢慢飞er阅读 3,000评论 2 14
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,254评论 2 33
  • 有个术语叫选择困难综合症。自从有了娃,我就严重选择困难。给家人买吃穿用还好,可是轮到给自己花钱,总是犹豫着选A还是...
    赵钰淇阅读 220评论 0 1
  • 晌午 太阳 火辣辣的太阳,仿佛要把大地烤熟,偶尔有一丝风吹过来,但整个风都是热的,吹在人身上,非但一点也不凉快,反...
    飞城阅读 137评论 2 1