Linux 编写一个bash脚本,将debian最小安装转换为crunchbang安装,但由于某些原因,它无法工作

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

我对bash很陌生,但我需要这个脚本

安装sudo并将用户输入的名称添加到sudoers文件中 将存储库添加到/etc/apt/sources.list 运行apt获取更新 安装必要的软件包,以使用GUI启动和运行系统 将必要的配置文件写入相应的用户目录。 运行apt获取更新 我99%确信我的大部分代码都是正确的,但是一些小东西把我甩了,我不知道是什么

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