System change, the script will change while if it can.
Build machine(s) to reproduce machines :)
put it into for example ~/.bashrc will generate a file for afterwards sourc-ing.
程式產生程式,以腳本產生腳本,
程式跟隨系統改變自行更新。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
P=/sys/devices/virtual/dmi/id/ | |
OUTF=/tmp/thinkpad_info.sh | |
[ -d ${P} ] && { | |
printf "#!/bin/sh\n#\n# Usage: . ${OUTF}\n\n" | |
ls $P | while read F; do | |
[ -f "$P/${F}" ] && { | |
printf "alias thinkpad_${F}='" | |
[ -r "$P/${F}" ] || printf "sudo " | |
printf "cat $P${F}'\n" | |
} | |
done | |
} > "${OUTF}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# | |
# Usage: . /tmp/thinkpad_info.sh | |
alias thinkpad_bios_date='cat /sys/devices/virtual/dmi/id/bios_date' | |
alias thinkpad_bios_vendor='cat /sys/devices/virtual/dmi/id/bios_vendor' | |
alias thinkpad_bios_version='cat /sys/devices/virtual/dmi/id/bios_version' | |
alias thinkpad_board_asset_tag='cat /sys/devices/virtual/dmi/id/board_asset_tag' | |
alias thinkpad_board_name='cat /sys/devices/virtual/dmi/id/board_name' | |
alias thinkpad_board_serial='sudo cat /sys/devices/virtual/dmi/id/board_serial' | |
alias thinkpad_board_vendor='cat /sys/devices/virtual/dmi/id/board_vendor' | |
alias thinkpad_board_version='cat /sys/devices/virtual/dmi/id/board_version' | |
alias thinkpad_chassis_asset_tag='cat /sys/devices/virtual/dmi/id/chassis_asset_tag' | |
alias thinkpad_chassis_serial='sudo cat /sys/devices/virtual/dmi/id/chassis_serial' | |
alias thinkpad_chassis_type='cat /sys/devices/virtual/dmi/id/chassis_type' | |
alias thinkpad_chassis_vendor='cat /sys/devices/virtual/dmi/id/chassis_vendor' | |
alias thinkpad_chassis_version='cat /sys/devices/virtual/dmi/id/chassis_version' | |
alias thinkpad_modalias='cat /sys/devices/virtual/dmi/id/modalias' | |
alias thinkpad_product_name='cat /sys/devices/virtual/dmi/id/product_name' | |
alias thinkpad_product_serial='sudo cat /sys/devices/virtual/dmi/id/product_serial' | |
alias thinkpad_product_uuid='sudo cat /sys/devices/virtual/dmi/id/product_uuid' | |
alias thinkpad_product_version='cat /sys/devices/virtual/dmi/id/product_version' | |
alias thinkpad_sys_vendor='cat /sys/devices/virtual/dmi/id/sys_vendor' | |
alias thinkpad_uevent='cat /sys/devices/virtual/dmi/id/uevent' |