Ubuntu用数组统计用户shell类型及对应数量

简介: Ubuntu用数组统计用户shell类型及对应数量

Ubuntu关闭dash

正常情况下,Ubuntu执行let会有报错提示命令未找到

这是因为Ubuntu默认的shell在真正执行的时候指向的dash,因此需要关闭dash,才能使脚本在bash下运行,关闭dash操作如下

root@seafile-0823:~# sudo dpkg-reconfigure dash

在弹出的窗口选择NO


上脚本

统计用户shell类型及对应数量

root@seafile-0823:~# cat arr.sh 
#!/bin/bash
declare -A login
while read line ;do
  type=`echo $line |awk -F: '{print $NF}'`
  let login[$type]++
done < /etc/passwd
for i in ${!login[*]};do
  echo "登录类型:$i 登录数量:${login[$i]}"
done

执行一下看看效果

root@seafile-0823:# chmod +x arr.sh 
root@seafile-0823:# ./arr.sh 
登录类型:/bin/bash 登录数量:2
登录类型:/bin/false 登录数量:3
登录类型:/usr/sbin/nologin 登录数量:29
登录类型:/bin/sync 登录数量:1
目录
相关文章
|
18天前
|
Ubuntu Shell
解决 Ubuntu 用户登录后的 shell 和功能问题
通过本文的详细介绍,您可以掌握解决Ubuntu用户登录后shell和功能问题的方法,从而确保系统的稳定和正常使用。
85 29
|
3月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
129 2
|
4月前
|
存储 Shell
Shell 数组
【10月更文挑战第16天】
58 3
|
4月前
|
Shell PHP 索引
Shell 数组
10月更文挑战第2天
34 1
|
5月前
|
Unix Shell Linux
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
本文提供了几个Linux shell脚本编程问题的解决方案,包括转置文件内容、统计词频、验证有效电话号码和提取文件的第十行,每个问题都给出了至少一种实现方法。
LeetCode刷题 Shell编程四则 | 194. 转置文件 192. 统计词频 193. 有效电话号码 195. 第十行
|
6月前
|
Ubuntu Shell 网络安全
安装了ubuntu虚拟机后发现shell无法连接 ubuntu开启ssh连接
【8月更文挑战第23天】安装了ubuntu虚拟机后发现shell无法连接
473 6
|
6月前
|
Shell KVM 虚拟化
Shell 数组编程
【8月更文挑战第22天】 Shell 数组编程
65 10
|
6月前
|
Shell Linux Perl
在Linux中,编写一个shell脚本,用于统计指定目录下所有文件的行数。
在Linux中,编写一个shell脚本,用于统计指定目录下所有文件的行数。
|
8月前
|
存储 Shell 开发者
Shell 数组:灵活操作的秘诀
**Shell 数组简介**:作为基础数据结构,数组在Shell编程中不可或缺。它们存储多个值,下标从0开始。创建如`array=(值1 值2...)`,访问用`${array[index]}`。增删改查及获取长度、拼接数组都有相应语法,例如`unset array[index]`删除元素,`${#array[@]}`获取长度。通过实践这些操作,提升Shell脚本技能。
66 0
|
8月前
|
Ubuntu Java Linux
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
177 2