Richard Hughes oznámil, že po společnostech Red Hat a Framework a organizacích OSFF a Linux Foundation, službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzorují také společnosti Dell a Lenovo. Do dnešního dne bylo díky LVFS provedeno více než 145 milionů aktualizací firmwarů od více než 100 různých výrobců na milionech linuxových zařízení.
Americké technologické společnosti Microsoft, Google a xAI souhlasily, že vládě Spojených států poskytnou přístup k novým modelům umělé inteligence (AI) před jejich uvedením na trh. Oznámila to americká vláda, která tak bude moci prověřit, zda modely nepředstavují hrozbu pro národní bezpečnost. Oznámení podtrhuje rostoucí obavy Washingtonu z rizik spojených s výkonnými AI systémy. Americké úřady chtějí v rámci předběžného přístupu
… více »Společnost Valve zveřejnila (GitLab) nákresy ovladače Steam Controller a puku. Pro všechny, kdo by jej chtěli hacknout nebo modifikovat, případně pro ně navrhnout nějaké příslušenství. Pod licencí Creative Commons (CC BY-NC-SA 4.0).
PHP bylo dlouho distribuováno pod vlastní licencí – s výjimkou částí spadajících pod licenci Zend Engine. Po několikaleté práci se povedlo PHP přelicencovat na 3bodovou licenci BSD.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube). Na Linuxu je vedle Qt frontendu nově k dispozici také GTK4 / libadwaita frontend.
Neziskové průmyslové konsorcium Khronos Group vydalo verzi 3.1 specifikace OpenCL (Open Computing Language). OpenCL je průmyslový standard pro paralelní programování heterogenních počítačových systémů.
Homebridge pro integraci chytrých domácích zařízení byl vydán ve verzi 2.0.0. Nově vedle protokolu HomeKit Accessory Protocol (HAP) podporuje standard chytré domácnosti Matter.
Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 3.7.0 - The Gaming Edition. Z novinek lze vypíchnout příkaz omarchy a celou řadu herních možností.
CyberChef byl vydán v nové major verzi 11. Přehled novinek v Changelogu. CyberChef je webová aplikace pro analýzu dat a jejich kódování a dekódování, šifrování a dešifrování, kompresi a dekompresi, atd. Často je využívaná při kybernetických cvičeních a CTF (Capture the Flag).
Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.
ls -l >data.txt
sh p2.exe
-obsah souboru p2.exe
main()
{
char radek[100];
char pismeno;
float soucet,nasobek;
int i;
FILE *fd;
FILE *fw;
if((fd=fopen("data.txt","r"))==NULL) return;
if((fw=fopen("SOUHRN.txt","w"))==NULL) return;
soucet=0;
printf("Zadejte pismeno, na ktere maji zacinat soubory:\n");
scanf("%c", &pismeno);
while(!feof(fd)) /* vypis souboru */
{
fgets (radek,100,fd);
if(radek[56] == pismeno){
printf("%s\n",radek);
fprintf(fw,"%s", radek);
i=42;
nasobek=1;
while ((i-- > 30) && (radek[i] != ' ')){
soucet+=(radek[i]-48)*nasobek;
nasobek*=10;
}
}
}
fclose(fd);
fclose(fw);
getchar();
system("pause");
}
<pre> a </pre> tagy.
#include<stdio.h>
sh p2.exe ti nebude fungovat. Jednak je v unixech koncovka exe zbytečná a druhak se ten soubor spustí ./p2 (./p2.exe, když už to musí být).$ gcc -c p2.c -o p2.o $ gcc p2.o -o p2.exe $ ls -l >data.txt $ cat data total 16 -rw-r--r-- 1 misak users 0 Jan 3 22:28 SOUHRN.txt -rw-r--r-- 1 misak users 0 Jan 3 22:28 data.txt -rw-r--r-- 1 misak users 744 Jan 3 22:20 p2.c -rwxr-xr-x 1 misak users 7590 Jan 3 22:20 p2.exe -rw-r--r-- 1 misak users 1680 Jan 3 22:20 p2.o $ ./p2.exe Zadejte pismeno, na ktere maji zacinat soubory: p $ cat SOUHRN.txt $Tady jsou změny, které jsem musel udělat:
$ diff p2.c.original p2.c
0a1
> #include<stdio.h>
22c23
< if (radek[56] == pismeno)
---
> if (radek[44] == pismeno)
39c40
< system ("pause");
---
> //system ("pause");
Pokud ti nejede žádný unix, co takhle zkusit cygwin? Nebo vmware player s nějakým nainstalovaným unixem?
.Díky za pomoc, jen k těm změnám: include.., to jsem dodělal, system("pause") odstranil ale co ta "IF", kam s nimi ? Nebo pochopil jsem dobře, že řádek:
if (radek[56] == pismeno)ls -l začínal na 45. sloupci a ne 57., ale teď se dívám, že na CentOS je to taky 56, takže ten řádek raději neměň, pokud ti to funguje
ls -l'. K procházení adresáře slouží opendir(), readdir() a closedir(), případně, nechce-li se tazatel zabývat přenositelností, lze uvažovat o použití scandir().
ls -l. Sice je to přitažené za vlasy, ale některá zadání taková bývají.
radek[56], aniž by se ověřilo, že je řádek aspoň tak dlouhý, což zrovna hned první nebude. Sice je to ve staticky alokovaném bufferu, takže nehrozí pád programu nebo zneužití, ale to, zda se bude první řádek kopírovat nebo ne, je de facto dáno náhodou. Také je podivné, že se celou dobu něco sčítá do proměnné soucet (proč je vlastně typu float?), ale hodnota se nikde nepoužije. Rozumnější verze programu by mohla vypadat např. takto:
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <sys/stat.h>
#include <unistd.h>
#include <string.h>
int main(int argc, char* argv[])
{
DIR* dir;
struct dirent* de;
struct stat info;
unsigned long long size;
size_t prefixlen;
const char* pgmname;
const char* p;
int R;
pgmname = argv[0];
for (p=argv[0]; *p; p++)
if (*p == '/') pgmname = p+1;
if (argc < 2) {
fprintf(stderr, "usage: %s directory [prefix]\n", pgmname);
return 1;
}
if (argc == 3) prefixlen = strlen(argv[2]);
else prefixlen = 0;
dir = opendir(argv[1]);
if (!dir) {
perror(pgmname);
return 2;
}
R = chdir(argv[1]);
if (R < 0) {
perror(pgmname);
return 3;
}
size = 0;
while ((de = readdir(dir)))
if (prefixlen==0 || !strncmp(de->d_name, argv[2], prefixlen)) {
stat(de->d_name, &info);
if (S_ISREG(info.st_mode)) {
size += info.st_size;
puts(de->d_name);
}
}
closedir(dir);
printf("Total size: %llu\n", size);
return 0;
}
.
No, co se týká toho školního servru
, ono něco takového asi existovat bude
, jenže já to mám jako volitelňák, takže jsem tam byl jen na jedné čtyřhodinovce, takže jsem to info asi ňako nezaznamenal
ls, nastavení locale a přesném vyvážení mnoha dalších okolnostífloat (které nakonec stejně nepoužije)
Tiskni
Sdílej: