🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.os.linux
1 messages
1 total messages Started by Marcin Debowski Sat, 17 Dec 2022 02:13
skrypt bash pod Qnap TS-431X2
#906759
Author: Marcin Debowski
Date: Sat, 17 Dec 2022 02:13
34 lines
1744 bytes
Skrypczę ostatnio pod Qnapowskim Linuksem aby ułatwić sobie życie i 
natrafiłem na pozornie trywialny problem zmiany pierwszej litery na dużą.

Powłoką jest bash GNU bash, version 3.2.57(2)-release 
(arm-unknown-linux-gnueabihf) i takie operacje jak np.:

To co działa na >=4:
NN="banana"; echo "${NN[@]^}"
Banana

na ww. nie działa:
NN="banana"; echo "${NN[@]^}"
banana

Co gorsze, sed jest też przerobiony (i sporo innych) i takie coś:
echo "banana"| sed 's/^\(.\)/\U\1/g'

nie zadziała.

tr też nie działa 
echo "banana"| tr '[:lower:]' '[:upper:]'
banana

Jakimś cudem awk działa
echo "banana" | awk '{print toupper(substr($0, 1, 1)) substr($0, 2)}'
Banana

ale wolałbym nie używać zewnętrznych poleceń.

Jakieś pomysły jak to zrobić na stringach pod gołym bashem (pierwszy 
przykład), czy dla ver<4 się po prostu nie da?

-- 
Marcin
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads