Linux 编写一个bash脚本,将debian最小安装转换为crunchbang安装,但由于某些原因,它无法工作
我对bash很陌生,但我需要这个脚本 安装sudo并将用户输入的名称添加到sudoers文件中 将存储库添加到/etc/apt/sources.list 运行apt获取更新 安装必要的软件包,以使用GUI启动和运行系统 将必要的配置文件写入相应的用户目录。 运行apt获取更新 我99%确信我的大部分代码都是正确的,但是一些小东西把我甩了,我不知道是什么Linux 编写一个bash脚本,将debian最小安装转换为crunchbang安装,但由于某些原因,它无法工作,linux,bash,variables,automation,Linux,Bash,Variables,Automation,我对bash很陌生,但我需要这个脚本 安装sudo并将用户输入的名称添加到sudoers文件中 将存储库添加到/etc/apt/sources.list 运行apt获取更新 安装必要的软件包,以使用GUI启动和运行系统 将必要的配置文件写入相应的用户目录。 运行apt获取更新 我99%确信我的大部分代码都是正确的,但是一些小东西把我甩了,我不知道是什么 echo "this script installs openbox and tint2 on top of your debian minim
echo "this script installs openbox and tint2 on top of your debian minimal
install..."
echo "MAKE SURE YOU'RE RUNNING THIS AS ROOT, OR IT WON'T WORK!"
read -p "Press enter to start :)"
echo "input your username"
read NAME
echo "installing an configuring sudo"
apt-get install sudo
adduser $NAME sudo
echo "configuring non-free repos"
echo "##Debian non-free repos added by cbr script" >> /etc/apt/sources.list
echo "deb http://ftp.us.debian.org/debian/ wheezy main contrib non-free" >> /etc/apt/sources.list
echo "deb-src http://ftp.us.debian.org/debian/ wheezy main contrib non-free" >> /etc/apt/sources.list
echo "deb http://security.debian.org/wheezy/updates main contrib non-free" >> /etc/apt/sources.list
echo "deb-src http://security.debian.org/wheezy/updates main contrib non-free" >> /etc/apt/sources.list
echo "updating apt"
apt-get update
echo "intalling CBR software..."
apt-get install vim xorg openbox build-essential leafpad chromium thunar gnome-dust-icon-theme
echo "writing your bash profile"
echo "if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then" >> /home/$NAME/.bash_profile
echo " startx" >> /home/$NAME/.bash_profile
echo "fi" >> /home/$NAME/.bash_profile
echo "writing your tint2 config file..."
mkdir /home/$NAME/.config/tint2
echo "#---------------------------------------------" >> /home/$NAME/.config/tint2/tint2rc
echo "# TINT2 CONFIG FILE" >> /home/$NAME/.config/tint2/tint2rc
echo "#---------------------------------------------" >> /home/$NAME/.config/tint2/tint2rc
echo "# For more information about tint2, see:" >> /home/$NAME/.config/tint2/tint2rc
echo "# http://code.google.com/p/tint2/wiki/Welcome" >> /home/$NAME/.config/tint2/tint2rc
echo "#" >> /home/$NAME/.config/tint2/tint2rc
echo "# For more config file examples, see:" >> /home/$NAME/.config/tint2/tint2rc
echo "# http://crunchbanglinux.org/forums/topic/3232/my-tint2-config/" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Background definitions" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 1" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #0A0A0A 90" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #121212 90" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 2 - task active" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #d8d8d8 30" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #d8d8d8 30" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 3 - task" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #000000 0" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #000000 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 4" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #888888 20" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #ED2323 60" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 5 - taskbar" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #000000 0" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #000000 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 6 - active taskbar" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #d8d8d8 8" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #d8d8d8 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 7 - tooltip" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 3" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #222222 90" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #222222 90" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# ID 8" >> /home/$NAME/.config/tint2/tint2rc
echo "rounded = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "border_width = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "background_color = #888888 20" >> /home/$NAME/.config/tint2/tint2rc
echo "border_color = #888888 20" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Panel" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_monitor = all" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_position = bottom center horizontal" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_items = TSC" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_size = 98% 30" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_margin = 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_padding = 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_dock = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "wm_menu = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_layer = bottom" >> /home/$NAME/.config/tint2/tint2rc
echo "panel_background_id = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Panel Autohide" >> /home/$NAME/.config/tint2/tint2rc
echo "autohide = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "autohide_show_timeout = 0.3" >> /home/$NAME/.config/tint2/tint2rc
echo "autohide_hide_timeout = 1.5" >> /home/$NAME/.config/tint2/tint2rc
echo "autohide_height = 6" >> /home/$NAME/.config/tint2/tint2rc
echo "strut_policy = follow_size" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Taskbar" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_mode = multi_desktop" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_padding = 6 0 6" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_background_id = 5" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_active_background_id = 6" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name_active_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name_font = sans 9" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name_font_color = #d8d8d8 100" >> /home/$NAME/.config/tint2/tint2rc
echo "taskbar_name_active_font_color = #d8d8d8 100" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Tasks" >> /home/$NAME/.config/tint2/tint2rc
echo "urgent_nb_of_blink = 20" >> /home/$NAME/.config/tint2/tint2rc
echo "task_icon = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "task_text = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "task_centered = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "task_maximum_size = 40 40" >> /home/$NAME/.config/tint2/tint2rc
echo "task_padding = 2 2" >> /home/$NAME/.config/tint2/tint2rc
echo "task_background_id = 3" >> /home/$NAME/.config/tint2/tint2rc
echo "task_active_background_id = 2" >> /home/$NAME/.config/tint2/tint2rc
echo "task_urgent_background_id = 4" >> /home/$NAME/.config/tint2/tint2rc
echo "task_iconified_background_id = 3" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Task Icons" >> /home/$NAME/.config/tint2/tint2rc
echo "task_icon_asb = 80 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "task_active_icon_asb = 100 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "task_urgent_icon_asb = 100 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "task_iconified_icon_asb = 80 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Fonts" >> /home/$NAME/.config/tint2/tint2rc
echo "task_font = sans 06_55 6" >> /home/$NAME/.config/tint2/tint2rc
echo "task_font_color = #d8d8d8 60" >> /home/$NAME/.config/tint2/tint2rc
echo "task_active_font_color = #d8d8d8 100" >> /home/$NAME/.config/tint2/tint2rc
echo "task_urgent_font_color = #FFFFFF 100" >> /home/$NAME/.config/tint2/tint2rc
echo "task_iconified_font_color = #d8d8d8 60" >> /home/$NAME/.config/tint2/tint2rc
echo "font_shadow = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Launcher" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_padding = 8 4 4" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_icon_size = 24" >> /home/$NAME/.config/tint2/tint2rc
echo "# Specify icon theme names with launcher_icon_theme. " >> /home/$NAME/.config/tint2/tint2rc
echo "# if you have an XSETTINGS manager running (like xfsettingsd), tint2 will follow your current theme." >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_icon_theme = gnome-colors-statler" >> /home/$NAME/.config/tint2/tint2rc
echo "# Each launcher_item_app must be a full path to a .desktop file" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_item_app = /usr/share/applications/terminator.desktop" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_item_app = /usr/share/applications/xfce4-file-manager.desktop" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_item_app = /usr/share/applications/gedit.desktop" >> /home/$NAME/.config/tint2/tint2rc
echo "launcher_item_app = /usr/share/applications/iceweasel.desktop" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# System Tray" >> /home/$NAME/.config/tint2/tint2rc
echo "systray = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "systray_padding = 4 2 3" >> /home/$NAME/.config/tint2/tint2rc
echo "systray_sort = ascending" >> /home/$NAME/.config/tint2/tint2rc
echo "systray_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "systray_icon_size = 24" >> /home/$NAME/.config/tint2/tint2rc
echo "systray_icon_asb = 100 0 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Clock" >> /home/$NAME/.config/tint2/tint2rc
echo "time1_format = %H:%M:%S" >> /home/$NAME/.config/tint2/tint2rc
echo "time1_font = sans 8" >> /home/$NAME/.config/tint2/tint2rc
echo "time2_format = %A %d %B" >> /home/$NAME/.config/tint2/tint2rc
echo "time2_font = sans 6" >> /home/$NAME/.config/tint2/tint2rc
echo "clock_font_color = #d8d8d8 100" >> /home/$NAME/.config/tint2/tint2rc
echo "clock_padding = 4 4" >> /home/$NAME/.config/tint2/tint2rc
echo "clock_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "clock_lclick_command = gsimplecal" >> /home/$NAME/.config/tint2/tint2rc
echo "clock_rclick_command = gsimplecal" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Tooltips" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_padding = 2 2" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_show_timeout = 0.0" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_hide_timeout = 0.0" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_background_id = 7" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_font_color = #d8d8d8 100" >> /home/$NAME/.config/tint2/tint2rc
echo "tooltip_font = sans normal 8.0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Mouse" >> /home/$NAME/.config/tint2/tint2rc
echo "mouse_middle = none" >> /home/$NAME/.config/tint2/tint2rc
echo "mouse_right = toggle" >> /home/$NAME/.config/tint2/tint2rc
echo "mouse_scroll_up = toggle" >> /home/$NAME/.config/tint2/tint2rc
echo "mouse_scroll_down = iconify" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# Battery" >> /home/$NAME/.config/tint2/tint2rc
echo "battery = 1" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_low_status = 20" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_low_cmd = notify-send "battery low"" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_hide = 96" >> /home/$NAME/.config/tint2/tint2rc
echo "bat1_font = Sans 10" >> /home/$NAME/.config/tint2/tint2rc
echo "bat2_font = Sans 8" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_font_color = #FFFFFF 100" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_padding = 2 0" >> /home/$NAME/.config/tint2/tint2rc
echo "battery_background_id = 0" >> /home/$NAME/.config/tint2/tint2rc
echo "" >> /home/$NAME/.config/tint2/tint2rc
echo "# End of config" >> /home/$NAME/.config/tint2/tint2rc
echo "tint2" >> /home/$NAME/.config/openbox/autostart.sh
echo "updating the whole system..."
apt-get upgrade
echo "Done! Restarting."
reboot
非常感谢您对这项工作的任何帮助,或对如何提高效率的建议,提前感谢您 让我们一步一步来 在安装和升级时放置-y
apt-get install -y sudo
及
及
现在,运行脚本并发布输出。
你要走多远
此外,这一行的作用与您认为的不同:
echo "if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then" >> /home/$NAME/.bash_profile
改变你的一切。。。。使用mkdir-p…它有什么问题?有些东西不起作用了吗?是的,你的标题说不起作用,但你的最后一段是如何提高效率。如果不起作用,请添加详细信息、错误MSG等。检查所有>>文件是否与预期一致。祝您好运。还记得,每次运行此测试时,您的echo cfgInfo>>文件都会在文件末尾反复添加相同的行。我看不到任何与此相关的东西,但可能是在您的设置中,我们没有看到。祝你好运是的,根本不起作用,什么都没写,什么都没做。“我不知道这是怎么回事,”为了清晰起见,编辑了原文。我还注意到我已经添加了\n它需要去的地方。谢谢等等,您的>>/home/$NAME/.config/tint2/tint2rc等文件中没有写入任何内容?你需要把它拆开,找出哪一层不起作用。正如你的标题所说,这是我所不知道的。您是否尝试从cmd行自行运行bash脚本?然后发生了什么。在顶部附近添加set-vx,您将得到一个详细的调试/跟踪,其中显示脚本行,后面是前面带+的行,显示变量使用的值。如果你看不出来,那就把除了第一部分以外的所有内容都注释掉。
apt-get install vim xorg openbox build-essential leafpad chromium thunar gnome-dust-icon-theme
echo "if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then" >> /home/$NAME/.bash_profile