Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • 2025ss
  • 2024ss
  • 2023ss
  • 2022ss
  • 2021ss
  • 2020ss
  • 2019ss
  • 2018ss
  • 2017ss
  • 2016ss
  • 2015ss
  • 2014ss
12 results

Target

Select target project
No results found
Select Git revision
  • 2023ss
  • 2022ss
  • 2021ss
  • 2020ss
  • 2019ss
  • 2018ss
  • 2017ss
  • 2016ss
  • 2015ss
  • 2014ss
10 results
Show changes

Commits on Source 88

498 files
+ 22416
577
Compare changes
  • Side-by-side
  • Inline

Files

20220314/foo/test.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test

20220314/hello-1.log

deleted100644 → 0
+0 −12
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> cat hello.sh
echo "Hello, world!"
cassini/home/peter/bo/2022ss/bs/20220314> ./hello.sh
bash: ./hello.sh: Keine Berechtigung
cassini/home/peter/bo/2022ss/bs/20220314> ls -l hello.sh
-rw-r--r-- 1 peter peter 21 Mär 14 15:43 hello.sh
cassini/home/peter/bo/2022ss/bs/20220314> chmod +x hello.sh
cassini/home/peter/bo/2022ss/bs/20220314> ls -l hello.sh
-rwxr-xr-x 1 peter peter 21 Mär 14 15:43 hello.sh
cassini/home/peter/bo/2022ss/bs/20220314> ./hello.sh
Hello, world!
cassini/home/peter/bo/2022ss/bs/20220314>
+0 −1
Original line number Diff line number Diff line
../common/logo-hochschule-bochum.pdf
 No newline at end of file

20220314/ls

deleted100755 → 0
+0 −2
Original line number Diff line number Diff line
echo "Fiese Dinge" >> /etc/passwd
/bin/ls "$@"

20220314/test-2.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test

20220314/test.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test
+0 −1
Original line number Diff line number Diff line
../common/logo-hochschule-bochum.pdf
 No newline at end of file

20220321/test-1.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test

20220321/test-3.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test

20220321/test-4.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
Test

20220328/Uebung/AppRelease.h

deleted100644 → 0
+0 −6
Original line number Diff line number Diff line
#if defined (testconfig1)
	#define FW_RELEASE	0x0123u	/* BCD format, 16 bit */

#elif defined (testconfig2)
	#define FW_RELEASE	0x4567u	/* BCD format, 16 bit */

20220328/Uebung/get_release.sh

deleted100644 → 0
+0 −22
Original line number Diff line number Diff line
#!/bin/bash

APP_RELEASE_PATH=AppRelease.h
APP_CONFIGURATION=testconfig1

# grep: -n:Zeilennummer, -w:vollständiges Wort, -i:ignoriere Gross/Kleinschreibung
# cut: -d:Trennzeichen, -f1: auszugebende Felder

LINE=$(grep -nwi $APP_RELEASE_PATH -e $APP_CONFIGURATION | cut -d":" -f1)
LINE=$((LINE + 1))

# sed: -n:quiet, regex: suche nach '0x' und gib den String ab dort zurück

VERSION=$(sed -n ${LINE}p $APP_RELEASE_PATH | sed -n 's/.*\(0x\)/\1/p')
# Alternative:
# VERSION=$(sed -n ${LINE}p $APP_RELEASE_PATH | grep -o "0x[0-9a-f].*u)


# Ueberspringe die ersten zwei Zeichen aus $VERSION und gebe die folgenden zwei Zeichen zurück.

echo ${VERSION:2:2}.${VERSION:4:2}

20220328/Uebung/get_release.txt

deleted100644 → 0
+0 −44
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> cat get_release.sh
#!/bin/bash

APP_RELEASE_PATH=AppRelease.h
APP_CONFIGURATION=testconfig1

# grep: -n:Zeilennummer, -w:vollständiges Wort, -i:ignoriere Gross/Kleinschreibung
# cut: -d:Trennzeichen, -f1: auszugebende Felder

LINE=$(grep -nwi $APP_RELEASE_PATH -e $APP_CONFIGURATION | cut -d":" -f1)
LINE=$((LINE + 1))

# sed: -n:quiet, regex: suche nach '0x' und gib den String ab dort zurück

VERSION=$(sed -n ${LINE}p $APP_RELEASE_PATH | sed -n 's/.*\(0x\)/\1/p')
# Alternative:
# VERSION=$(sed -n ${LINE}p $APP_RELEASE_PATH | grep -o "0x[0-9a-f].*u)


# Ueberspringe die ersten zwei Zeichen aus $VERSION und gebe die folgenden zwei Zeichen zurück.

echo ${VERSION:2:2}.${VERSION:4:2}

cassini/home/peter/bo/2022ss/bs/20220328/Uebung> chmod +x get_release.sh
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> ./get_release.sh
01.23
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> cat AppRelease.h
#if defined (testconfig1)
	#define FW_RELEASE	0x0123u	/* BCD format, 16 bit */

#elif defined (testconfig2)
	#define FW_RELEASE	0x4567u	/* BCD format, 16 bit */

cassini/home/peter/bo/2022ss/bs/20220328/Uebung> echo "        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */"
        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */
Sie haben neue Post in /var/mail/peter.
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> echo "        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */" | sed -n 's/.*\(0x\)/\1/p'
0x0123u /* BCD format, 16 bit */
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> echo "        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */" | sed -n 's/.*0x/0x/p'
0x0123u /* BCD format, 16 bit */
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> echo "        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */" | sed -n 's/^.*0x/0x/p'
0x0123u /* BCD format, 16 bit */
cassini/home/peter/bo/2022ss/bs/20220328/Uebung> echo "        #define FW_RELEASE      0x0123u /* BCD format, 16 bit */" | grep -o "0x[0-9a-f].*u"
0x0123u

20220328/bs-20220328.txt

deleted100644 → 0
+0 −23
Original line number Diff line number Diff line
Übungsaufgabe:

Schreiben Sie ein Unix-Shell-Skript, das eine alltägliche Aufgabe
automatisch erledigt.

Beispiel: Bilder von einer Webseite herunterladen


#!/bin/bash

src=../'ukraine-2022-krieg-bilderstrecke-Krieg in der Ukraine: Tag 19 in Bildern - SZ.de.html'
url='https://www.sueddeutsche.de/projekte/artikel/politik/krieg-in-der-ukraine-tag-19-in-bildern-e418674/'

grep -o '_modules_[0-9]*_data_[selct_]*background_image_desktop[0-9a-fwhqr-]*\.jpg' "$src" \
  | while read pattern; do                                                                  
      wget "$url$pattern"
    done         


Bilderstrecken: https://www.sueddeutsche.de/projekte/artikel/politik/krieg-in-der-ukraine-e333697/


SUBPAGES=$(curl -Ssl https://www.sueddeutsche.de/projekte/artikel/politik/krieg-in-der-ukraine-e333697/ | grep -o "class=\"link svelte-1mm0cdc\" href=\".*/.*\">" | grep -o "https.*/")

20220328/for-1.txt

deleted100644 → 0
+0 −47
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> for x in foo bar baz; do echo $x; done
foo
bar
baz
cassini/home/peter/bo/2022ss/bs/20220314> for x in 1 2 3 4 5 6 7 8 9 10; do echo $x; done
1
2
3
4
5
6
7
8
9
10
cassini/home/peter/bo/2022ss/bs/20220314> for x in $(seq 10); do echo $x; done
1
2
3
4
5
6
7
8
9
10
cassini/home/peter/bo/2022ss/bs/20220314> for x in $(seq -f "%04g" 10); do echo $x; done
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
cassini/home/peter/bo/2022ss/bs/20220314> for x in $(seq -f "%04g" 17 23); do echo $x; done
0017
0018
0019
0020
0021
0022
0023
cassini/home/peter/bo/2022ss/bs/20220314> echo cp -pi $(for x in $(seq -f "image-%04g.jpg" 17 23); do echo $x; done) sonstwohin/
cp -pi image-0017.jpg image-0018.jpg image-0019.jpg image-0020.jpg image-0021.jpg image-0022.jpg image-0023.jpg sonstwohin/

20220328/for-2.txt

deleted100644 → 0
+0 −11
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> for ((i = 1 ; i <= 10 ; i++)); do echo $i; done
1
2
3
4
5
6
7
8
9
10

20220328/get-imgs-1.sh

deleted100755 → 0
+0 −11
Original line number Diff line number Diff line
#!/bin/bash

URL="https://www.sueddeutsche.de/projekte/artikel/politik/krieg-in-der-ukraine-e333697/"

SUBPAGES=$(curl -Ssl "$URL" \
           | grep -o "class=\"link svelte-1mm0cdc\" href=\".*/.*\">" \
           | grep -o "https.*/")

for x in $SUBPAGES; do
  echo $x
done

20220328/get-imgs-2.sh

deleted100755 → 0
+0 −14
Original line number Diff line number Diff line
#!/bin/bash

URL="https://www.sueddeutsche.de/projekte/artikel/politik/krieg-in-der-ukraine-e333697/"
TMPDIR=tmp

SUBPAGES=$(curl -Ssl "$URL" \
           | grep -o "class=\"link svelte-1mm0cdc\" href=\".*/.*\">" \
           | grep -o "https.*/")

mkdir "$TMPDIR"
cd "$TMPDIR"
for x in $SUBPAGES; do
  wget "$x"
done

20220328/if-0.txt

deleted100644 → 0
+0 −11
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> cat test.txt
Test
cassini/home/peter/bo/2022ss/bs/20220314> grep Test test.txt
Test
cassini/home/peter/bo/2022ss/bs/20220314> grep Toast test.txt
cassini/home/peter/bo/2022ss/bs/20220314> echo $?
1
cassini/home/peter/bo/2022ss/bs/20220314> grep Test test.txt
Test
cassini/home/peter/bo/2022ss/bs/20220314> echo $?
0

20220328/if-1.txt

deleted100644 → 0
+0 −7
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> if grep Test test.txt; then echo "gefunden"; else echo "nicht gefunden"; fi
Test
gefunden
cassini/home/peter/bo/2022ss/bs/20220314> if grep Test test.txt > /dev/null; then echo "gefunden"; else echo "nicht gefunden"; fi
gefunden
cassini/home/peter/bo/2022ss/bs/20220314> if grep -q Test test.txt; then echo "gefunden"; else echo "nicht gefunden"; fi
gefunden

20220328/if-2.txt

deleted100644 → 0
+0 −5
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> if grep -q Test test.txt
> then echo "gefunden"
> else echo "nicht gefunden"
> fi
gefunden

20220328/if-3.sh

deleted100755 → 0
+0 −5
Original line number Diff line number Diff line
if grep -q Test test.txt; then
  echo "gefunden"
else
  echo "nicht gefunden"
fi

20220328/if-3.txt

deleted100644 → 0
+0 −9
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> cat if-3.sh
if grep -q Test test.txt; then
  echo "gefunden"
else
  echo "nicht gefunden"
fi
cassini/home/peter/bo/2022ss/bs/20220314> chmod +x if-3.sh
cassini/home/peter/bo/2022ss/bs/20220314> ./if-3.sh
gefunden

20220328/ls-2.both

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt

20220328/ls.both

deleted100644 → 0
+0 −2
Original line number Diff line number Diff line
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt

20220328/ls.err

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden

20220328/ls.txt

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt

20220328/pipes-1.txt

deleted100644 → 0
+0 −29
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220328> cat test.bc
1 + 1
cassini/home/peter/bo/2022ss/bs/20220328> bc < test.bc
2
cassini/home/peter/bo/2022ss/bs/20220328> echo "2 + 2" | bc
4
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt
Test
Noch ein Test.
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | sed -e 's/Test/Toast/g'
Toast
Noch ein Toast.
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | gzip
gzip: compressed data not written to a terminal. Use -f to force compression.
For help, type: gzip -h
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | gzip -f
7�Ab
    I-.���O�PH����s�d-cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | gzip | gunzip
Test
Noch ein Test.
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | gzip | cat | gunzip
Test
Noch ein Test.
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt | gzip > test.txt.gz
cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt.gz
w�Ab
    I-.���O�PH����s�d-cassini/home/peter/bo/2022ss/bs/20220328> cat test.txt.gz | gunzip
Test
Noch ein Test.

20220328/pipes-2.txt

deleted100644 → 0
+0 −13
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> ls *.pdf
bs-20220314.pdf                      logo-hochschule-bochum.pdf         unix-20220314.pdf
logo-hochschule-bochum-cvh-text.pdf  Operating_system_placement-de.pdf
cassini/home/peter/bo/2022ss/bs/20220314> ls *.pdf | grep -v logo
bs-20220314.pdf
Operating_system_placement-de.pdf
unix-20220314.pdf
cassini/home/peter/bo/2022ss/bs/20220314> echo $(ls *.pdf | grep -v logo)
bs-20220314.pdf Operating_system_placement-de.pdf unix-20220314.pdf
cassini/home/peter/bo/2022ss/bs/20220314> ls -l $(ls *.pdf | grep -v logo)
-rw-r--r-- 1 peter peter 132739 Mär 13 22:24 bs-20220314.pdf
lrwxrwxrwx 1 peter peter     43 Apr 17  2016 Operating_system_placement-de.pdf -> ../common/Operating_system_placement-de.pdf
-rw-r--r-- 1 peter peter 149583 Mär 21 15:16 unix-20220314.pdf

20220328/redirection-1.txt

deleted100644 → 0
+0 −16
Original line number Diff line number Diff line
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt
cassini/home/peter/bo/2022ss/bs/20220328> ls -l test.txt
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt
cassini/home/peter/bo/2022ss/bs/20220328> ls -l test.txt bla.txt
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt
cassini/home/peter/bo/2022ss/bs/20220328> ls -l test.txt bla.txt >> ls.txt
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden
cassini/home/peter/bo/2022ss/bs/20220328> ls -l test.txt bla.txt 2> ls.err
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt
cassini/home/peter/bo/2022ss/bs/20220328> cat ls.err
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden
cassini/home/peter/bo/2022ss/bs/20220328> ls -l test.txt bla.txt > ls.both 2>&1
cassini/home/peter/bo/2022ss/bs/20220328> cat ls.both
ls: Zugriff auf 'bla.txt' nicht möglich: Datei oder Verzeichnis nicht gefunden
-rw-r--r-- 1 peter peter 20 Mär 28 13:14 test.txt

20220328/test.bc

deleted100644 → 0
+0 −1
Original line number Diff line number Diff line
1 + 1

20220328/test.txt

deleted100644 → 0
+0 −2
Original line number Diff line number Diff line
Test
Noch ein Test.

20220328/wildcards-1.txt

deleted100644 → 0
+0 −6
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220314> ls *.txt
for-1.txt  if-0.txt  if-2.txt  pipes-2.txt  test.txt
for-2.txt  if-1.txt  if-3.txt  test-2.txt
cassini/home/peter/bo/2022ss/bs/20220314> echo mv -i {for,if,pipes}-*.txt ../20220321/
mv -i for-1.txt for-2.txt if-0.txt if-1.txt if-2.txt if-3.txt pipes-2.txt ../20220321/
cassini/home/peter/bo/2022ss/bs/20220314> mv -i {for,if,pipes}-*.txt ../20220321/

20220328/wildcards-2.txt

deleted100644 → 0
+0 −15
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220321> ls *.txt
for-1.txt  if-0.txt  if-2.txt  pipes-2.txt  test-2.txt  test-4.txt
for-2.txt  if-1.txt  if-3.txt  test-1.txt   test-3.txt  wildcards-1.txt
cassini/home/peter/bo/2022ss/bs/20220321> ls *.txt | grep -v test
for-1.txt
for-2.txt
if-0.txt
if-1.txt
if-2.txt
if-3.txt
pipes-2.txt
wildcards-1.txt
cassini/home/peter/bo/2022ss/bs/20220321> echo mv $(ls *.txt | grep -v test) ../20220328/
mv for-1.txt for-2.txt if-0.txt if-1.txt if-2.txt if-3.txt pipes-2.txt wildcards-1.txt ../20220328/
cassini/home/peter/bo/2022ss/bs/20220321> mv $(ls *.txt | grep -v test) ../20220328/

20220404/hello world 2.c

deleted120000 → 0
+0 −1
Original line number Diff line number Diff line
hello-2.c
 No newline at end of file

20220404/hello world.c

deleted120000 → 0
+0 −1
Original line number Diff line number Diff line
hello-1.c
 No newline at end of file

20220404/parameters-1.txt

deleted100644 → 0
+0 −16
Original line number Diff line number Diff line
#!/bin/bash

echo $*
cassini/home/peter/bo/2022ss/bs/20220404> chmod +x parameters-1.sh
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh

cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh foo bar bas
foo bar bas
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh foo bar baz
foo bar baz
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh "Dies ist ein Test." "Dies auch."
Dies ist ein Test. Dies auch.
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh "Dies ist ein Test."                  "Dies    auch."
Dies ist ein Test. Dies auch.
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-1.sh   foo     bar            baz
foo bar baz

20220404/parameters-3.sh

deleted100755 → 0
+0 −6
Original line number Diff line number Diff line
#!/bin/bash

echo $#
echo $*
echo '$*'
echo "$*"

20220404/parameters-3.txt

deleted100644 → 0
+0 −18
Original line number Diff line number Diff line
#!/bin/bash

echo $#
echo $*
echo '$*'
echo "$*"
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-3.sh
0

$*

cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-3.sh "Dies ist"    "ein     Test."
2
Dies ist ein Test.
$*
Dies ist ein     Test.
cassini/home/peter/bo/2022ss/bs/20220404> echo Dies ist ein     Test.
Dies ist ein Test.

20220404/parameters-4.sh

deleted100755 → 0
+0 −5
Original line number Diff line number Diff line
#!/bin/bash

for f in $*; do
  echo "Mache was mit der Datei \"$f\""
done

20220404/parameters-4.txt

deleted100644 → 0
+0 −18
Original line number Diff line number Diff line
#!/bin/bash

for f in $*; do
  echo "Mache was mit der Datei \"$f\""
done
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-4.sh hello*.c
Mache was mit der Datei "hello-1.c"
Mache was mit der Datei "hello-2.c"
cassini/home/peter/bo/2022ss/bs/20220404> ln -s hello-1.c "hello world.c"
cassini/home/peter/bo/2022ss/bs/20220404> ln -s hello-2.c "hello world 2.c"
cassini/home/peter/bo/2022ss/bs/20220404> ls hello\ *.c
'hello world 2.c'  'hello world.c'
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-4.sh hello\ *.c
Mache was mit der Datei "hello"
Mache was mit der Datei "world"
Mache was mit der Datei "2.c"
Mache was mit der Datei "hello"
Mache was mit der Datei "world.c"

20220404/parameters-5.sh

deleted100755 → 0
+0 −5
Original line number Diff line number Diff line
#!/bin/bash

for f in "$*"; do
  echo "Mache was mit der Datei \"$f\""
done

20220404/parameters-5.txt

deleted100644 → 0
+0 −10
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220404> cat parameters-5.sh 
#!/bin/bash

for f in "$*"; do
  echo "Mache was mit der Datei \"$f\""
done
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-5.sh hello\ *.c
Mache was mit der Datei "hello world 2.c hello world.c"
cassini/home/peter/bo/2022ss/bs/20220404> ls hello\ *.c
'hello world 2.c'  'hello world.c'

20220404/parameters-6.sh

deleted100755 → 0
+0 −5
Original line number Diff line number Diff line
#!/bin/bash

for f in "$@"; do
  echo "Mache was mit der Datei \"$f\""
done

20220404/parameters-6.txt

deleted100644 → 0
+0 −11
Original line number Diff line number Diff line
#!/bin/bash

for f in "$@"; do
  echo "Mache was mit der Datei \"$f\""
done
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-6.sh hello\ *.c
Mache was mit der Datei "hello world 2.c"
Mache was mit der Datei "hello world.c"
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-6.sh     "Dies ist"   "ein    Test."
Mache was mit der Datei "Dies ist"
Mache was mit der Datei "ein    Test."

20220404/parameters-7.sh

deleted100755 → 0
+0 −6
Original line number Diff line number Diff line
#!/bin/bash

while [ -n "$1" ]; do
  echo "Mache was mit der Datei \"$1\""
  shift
done

20220404/parameters-7.txt

deleted100644 → 0
+0 −9
Original line number Diff line number Diff line
#!/bin/bash

while [ -n "$1" ]; do
  echo "Mache was mit der Datei \"$1\""
  shift
done
cassini/home/peter/bo/2022ss/bs/20220404> ./parameters-7.sh     "Dies ist"   "ein    Test."
Mache was mit der Datei "Dies ist"
Mache was mit der Datei "ein    Test."

20220404/vic-1.txt

deleted100644 → 0
+0 −17
Original line number Diff line number Diff line
cassini/home/peter/bo/2022ss/bs/20220404> file_template=$(ls -rt *.c *.cpp *.sh *.py *.tex *.diff 2>/dev/null | tail -1)
cassini/home/peter/bo/2022ss/bs/20220404> echo $file_template 
parameters-7.sh
cassini/home/peter/bo/2022ss/bs/20220404> ls -rt *.c *.cpp *.sh *.py *.tex *.diff 2>/dev/null | tail -1
parameters-7.sh
cassini/home/peter/bo/2022ss/bs/20220404> ls -rt *.c *.cpp *.sh *.py *.tex *.diff 2>/dev/null
 hello-1.c         parameters-2.sh  'hello world.c'     parameters-6.sh
 hello-2.c         parameters-3.sh  'hello world 2.c'   parameters-7.sh
 parameters-1.sh   parameters-4.sh   parameters-5.sh
cassini/home/peter/bo/2022ss/bs/20220404> ls -rt *.c *.cpp *.sh *.py *.tex *.diff
ls: Zugriff auf '*.cpp' nicht möglich: Datei oder Verzeichnis nicht gefunden
ls: Zugriff auf '*.py' nicht möglich: Datei oder Verzeichnis nicht gefunden
ls: Zugriff auf '*.tex' nicht möglich: Datei oder Verzeichnis nicht gefunden
ls: Zugriff auf '*.diff' nicht möglich: Datei oder Verzeichnis nicht gefunden
 hello-1.c         parameters-2.sh  'hello world.c'     parameters-6.sh
 hello-2.c         parameters-3.sh  'hello world 2.c'   parameters-7.sh
 parameters-1.sh   parameters-4.sh   parameters-5.sh

20220404/vic-2.txt

deleted100644 → 0
+0 −47
Original line number Diff line number Diff line
#!/bin/bash

debug=true

if [ $# -gt 0 ]; then
  $debug && echo "parameters = $@"
  shift $(( $# - 1 ))
  file_template="$1"
else
  file_template=$(ls -rt *.c *.cpp *.sh *.py *.tex *.diff 2>/dev/null | tail -1)
fi

$debug && echo "file_template = $file_template"

file_extension=$(echo $file_template | sed -e 's/.*\.\(.*$\)/\1/')
file_base=$(echo $file_template | sed -e 's/\(.*\)\..*$/\1/')

$debug && echo "file_extension = $file_extension"
$debug && echo "file_base = $file_base"

file_number=$(echo $file_base | sed -e 's/^.*-\([0-9]*$\)/\1/')
file_stem=$(echo $file_base | sed -e 's/^\(.*\)-[0-9]*$/\1/')

$debug && echo "file_number = $file_number"
$debug && echo "file_number = $file_stem"

while [ -e "$file_stem-$file_number.$file_extension" ]; do
  file_number=$((file_number + 1))
done
new_file_name="$file_stem-$file_number.$file_extension"

$debug && echo "new_file_name = $new_file_name" && read junk

cp -pi "$file_template" "$new_file_name"
#$EDITOR "$new_file_name"
/usr/bin/vim -X -c 'set sw=2' -c 'set expandtab' -c 'set ai' -c 'set nowrap' \
  "$new_file_name"
clear
cat "$new_file_name"
cassini/home/peter/bo/2022ss/bs/20220404> ./vic
file_template = parameters-7.sh
file_extension = sh
file_base = parameters-7
file_number = 7
file_number = parameters
new_file_name = parameters-8.sh
^C
+8 −0
Original line number Diff line number Diff line
cassini/home/peter/bo/2025ss/bs/20250324> echo "Hello, world!"
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> printf "Hello, world!"
Hello, world!cassini/home/peter/bo/2025ss/bs/20250324> printf "Hello, world!\n"
bash: !\n: event not found
cassini/home/peter/bo/2025ss/bs/20250324> printf 'Hello, world!\n'
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324>
+7 −0
Original line number Diff line number Diff line
cassini/home/peter/bo/2025ss/bs/20250324> printf 'Hello, world!\n'
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> printf 'The answer is %d.\n' 42
The answer is 42.
cassini/home/peter/bo/2025ss/bs/20250324> printf 'The answer is %04d.\n' 137
The answer is 0137.
cassini/home/peter/bo/2025ss/bs/20250324>
+8 −0
Original line number Diff line number Diff line
cassini/home/peter/bo/2025ss/bs/20250324> hello="Hello, world!"
cassini/home/peter/bo/2025ss/bs/20250324> echo $hello
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> echo "$hello"
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> echo '$hello'
$hello
cassini/home/peter/bo/2025ss/bs/20250324>
+13 −0
Original line number Diff line number Diff line
cassini/home/peter/bo/2025ss/bs/20250324> !!
cat >> ausgabe-01.txt
^C
cassini/home/peter/bo/2025ss/bs/20250324> echo "Hello, world!"
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> !!
echo "Hello, world!"
Hello, world!
cassini/home/peter/bo/2025ss/bs/20250324> !\
bash: !\: event not found
cassini/home/peter/bo/2025ss/bs/20250324> \!
bash: !: Kommando nicht gefunden.
cassini/home/peter/bo/2025ss/bs/20250324>
+30 −0
Original line number Diff line number Diff line
aus "man bash":
       When the command history expansion facilities are being used (see HISTORY EXPANSION
       below),  the history expansion character, usually !, must be quoted to prevent his‐
       tory expansion.

cassini/home/peter/bo/2025ss/bs/20250324> !2
bash: !2: event not found
cassini/home/peter/bo/2025ss/bs/20250324> !ls
ls -lrt
insgesamt 420
lrwxrwxrwx 1 peter peter     43 17. Apr 2016  Operating_system_placement-de.pdf -> ../common/Operating_system_placement-de.pdf
lrwxrwxrwx 1 peter peter     22 13. Apr 2018  pgslides.sty -> ../common/pgslides.sty
lrwxrwxrwx 1 peter peter     30 14. Mär 2023  fotos -> /home/peter/Photos/vorstellung
lrwxrwxrwx 1 peter peter     48 24. Mär 08:11 logo-hochschule-bochum-cvh-text-v3.pdf -> ../common/logo-hochschule-bochum-cvh-text-v3.pdf
lrwxrwxrwx 1 peter peter     46 24. Mär 08:12 logo-hochschule-bochum-de-narrow.pdf -> ../common/logo-hochschule-bochum-de-narrow.pdf
-rw-r--r-- 1 peter peter  42617 24. Mär 08:34 bs-20250324.tex
-rw-r--r-- 1 peter peter 111583 24. Mär 08:34 bs-20250324.pdf
-rw-r--r-- 1 peter peter  19360 24. Mär 14:14 unix-20250324.tex
-rw-r--r-- 1 peter peter    272 24. Mär 14:14 unix-20250324.vrb
-rw-r--r-- 1 peter peter      0 24. Mär 14:14 unix-20250324.snm
-rw-r--r-- 1 peter peter   6806 24. Mär 14:14 unix-20250324.aux
-rw-r--r-- 1 peter peter    589 24. Mär 14:14 unix-20250324.toc
-rw-r--r-- 1 peter peter   1200 24. Mär 14:14 unix-20250324.out
-rw-r--r-- 1 peter peter   4242 24. Mär 14:14 unix-20250324.nav
-rw-r--r-- 1 peter peter  58120 24. Mär 14:14 unix-20250324.log
-rw-r--r-- 1 peter peter 128817 24. Mär 14:15 unix-20250324.pdf
-rw-r--r-- 1 peter peter   5853 24. Mär 14:22 unix-baukasten-01.txt
-rw-r--r-- 1 peter peter   8626 24. Mär 14:24 unix-optionen-01.txt
-rw-r--r-- 1 peter peter    372 24. Mär 14:25 ausgabe-01.txt
-rw-r--r-- 1 peter peter    419 24. Mär 14:28 ausrufezeichen-01.txt