Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Symbole nach zahlen anzeigen ?

Frage Entwicklung Batch & Shell

Mitglied: Nowologix

Nowologix (Level 1) - Jetzt verbinden

13.12.2007, aktualisiert 14.12.2007, 4020 Aufrufe, 9 Kommentare

Hi

ich möchte gerne einen counter schreiben...
bin auch so gut wie fertig aber da fehlt noch eine kleingkeit...

das scheme zum zählen sieht so aus:


:Start
set /a count=count+1

goto :Start



So nun soll aber ein kleiner optischer counter rein...
so in etwa:

:Start
set /a count=count+1
***
goto :Start


kann ich eine bestimmen zeichenzahl anzeigen lassen ?
also wenn COUNT=10 dann soll er 10 Sternchen ausgeben...

ist das irgendwie möglich ?
Mitglied: 58502
13.12.2007 um 23:42 Uhr
Eine zusätzliche Zeile nach jedem set /a ausführen und die Sterne mit der Variablen ausgeben.

01.
set stern= 
02.
 
03.
:Start 
04.
set /a count=count+1 
05.
if "%stern%"=="" (set stern=*) else (set stern=%stern%*) 
06.
echo %stern% 
07.
 
08.
rem wenn du hier nichts änderst, bist du in einer Endlosschleife 
09.
 
10.
goto :Start
Bitte warten ..
Mitglied: Dani
14.12.2007 um 00:07 Uhr
Abend,
eine weitere Möglichkeit wäre statt der IF - Abfrage einfach eine FOR - Schleife benutzen.
01.
@echo off 
02.
 
03.
:start 
04.
set /a count=count+1 
05.
for /l %%a in (1,1,%count%) do echo * 
06.
 
07.
goto start
Bei der Schleife handelt es sich um eine Zählschleife. Sprich 1 ist der Startwert. Der 2. Parameter ist die Schrittweite. Der Letzte gibt das Maximum an. Allerdings so, wird dir das Ganze zu schnell durchlaufen.


Grüße
Dani
Bitte warten ..
Mitglied: 58502
14.12.2007 um 00:31 Uhr
Jetzt musst du nur noch erklären, wie man die Zeilenvorschübe wegbekommt, so dass die Sternchen in einer Zeile bleiben.
Bitte warten ..
Mitglied: Dani
14.12.2007 um 01:30 Uhr
Moin,
Sry...war wohl schon gedanklich im Bett.

Hier die Version 0.2:
01.
@echo off & setlocal 
02.
set stern= 
03.
 
04.
:start 
05.
set /a count+=1 
06.
for /l %%a in (1,1,%count%) do set stern=%stern%* 
07.
echo %stern% 
08.
 
09.
goto start
Getestet unter WindowsXP Professional.


Grüße
Dani
Bitte warten ..
Mitglied: Nowologix
14.12.2007 um 01:46 Uhr
wunderbar läuft alles prima =)


Vielen dank an euch beide !!!
Bitte warten ..
Mitglied: 58502
14.12.2007 um 01:59 Uhr
@Dani

Hehe, das hatte ich auch schon angedacht. Ich bin nur am Test ohne Batch in der Konsole gescheitert.

Probiere doch mal aus:

set stern=
set stern=%stern%*
set stern oder
echo %stern%

Was wird als Wert für stern angezeigt?
Bitte warten ..
Mitglied: Biber
14.12.2007 um 08:32 Uhr
Moin nowologix,

Du solltest auch mal in diesem Thread ...Fortschrittsbalken unter Batch stöbern.
Obwohl eigentlich die Intension dieses Beitrags war zu belegen, dass es nicht sinnvoll geht.

Für Dein kleines Fortschrittsbälkchen wäre als Strategie auch möglich, die %Stern%-Variable am Anfang in der maximal denkbaren Länge zu definieren (z.B. 20 Zeichen lang) und dann jeweils einen Teilstring anzuzeigen, ohne die Variable selbst neu zu SETzen.

Beispiel am Prompt:
01.
>set stern=*************** 
02.
>for /L %a in (1,1,10) do @echo !stern:~0,%a! 
03.
04.
** 
05.
*** 
06.
**** 
07.
***** 
08.
****** 
09.
******* 
10.
******** 
11.
********* 
12.
**********
-oder in Deinem Fall/Batch
01.
@echo off & setlocal EnableDelayedExpansion 
02.
Set Stern=********************** 
03.
Set /a max= 10 
04.
:Start 
05.
set /a count=count+1 
06.
:: hier irgendwas verarbeiten  
07.
:: hier irgendwas verarbeiten  
08.
cls 
09.
echo !stern:~0,%count%! 
10.
 
11.
If %count% GEQ %max% goto :eof 
12.
goto :Start
[Hier im Beispiel mal ohne FOR-Anweisung; hier ist es ja mit "goto :Start" angefangen worden.]

Grüße
Biber
Bitte warten ..
Mitglied: Dani
14.12.2007 um 11:22 Uhr
Hi,
die Ausgabe sieht so aus:
01.
Microsoft Windows XP [Version 5.1.2600] 
02.
(C) Copyright 1985-2001 Microsoft Corp. 
03.
 
04.
C:\Dokumente und Einstellungen\rbs>set stern= 
05.
 
06.
C:\Dokumente und Einstellungen\rbs>set stern=%stern%* 
07.
 
08.
C:\Dokumente und Einstellungen\rbs>echo %stern% 
09.
%stern%* 
10.
 
11.
C:\Dokumente und Einstellungen\rbs>
Direkt aus dem Prompt kopiert....


Grüße
Dani
Bitte warten ..
Mitglied: Biber
14.12.2007 um 12:33 Uhr
Na ja, Dani,

wobei ich dazu noch ergänzen muss, dass das Verhalten mit nicht-definierten Variablen am CMD-Prompt und im Batch unterschiedlich ist. Habe ich schon mal in dem Batch-TutII ("Ein bisschen Handwerkszeug") breitgetreten.

Am CMD-Prompt:
echo %undefinierteVar% --------> führt zur Ausgabe: %undefinerteVar% (als Text 1:1).

Im Batch:
echo %undefinierteVar% --------> führt zur Ausgabe: (nix. Leerstring) .

Insofern würde Dein "immer-einen-*-anhängen" im Batch schon funktioneren.

Dass ich so einen Schrubbelcode hier in "Batch & Shell" niemals gutheißen würde, ist was anderes..

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst EXCEL: Zahlen aufrunden volle Tausenderstelle (10)

Frage von sims zum Thema Microsoft Office ...

Microsoft Office
Skype for Business 2016 Chat Kontakte richtig anzeigen?

Frage von Geforce zum Thema Microsoft Office ...

Python
Python - Windows Dateiberechtigungen anzeigen (1)

Frage von stinkluth zum Thema Python ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
POS Hardware und alternativen zu Raid 1? (21)

Frage von Brotkasten zum Thema Festplatten, SSD, Raid ...

Viren und Trojaner
Verschlüsselungstrojaner simulieren (18)

Frage von AlbertMinrich zum Thema Viren und Trojaner ...

Ubuntu
Nextcloud 12 Antivirus App for Files (8)

Frage von horstvogel zum Thema Ubuntu ...

Server-Hardware
gelöst Empfehlung KVM over IP Switch (8)

Frage von Androxin zum Thema Server-Hardware ...